๋ชจ๋ ์น์ ์ํ HTML5+CSS3 ๋ฐ์ด๋ธ(1)
๐ ๋ค์ด๊ฐ๊ธฐ์ ์์
์ด ๊ธ์ ๋ชจ๋ ์น์ ์ํ HTML5+CSS3 ๋ฐ์ด๋ธ
์ ๊ณต๋ถํ๋ฉฐ ๊ธฐ์ตํด๋ ๋ด์ฉ๋ค์ ๊ฐ๋จํ๊ฒ ๊ธฐ๋กํ ๊ธ์
๋๋ค.
์ฑ
์ ๋ํ ์์ธํ ์ฌํญ์ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํด์ฃผ์ธ์. ๐
๐ 1. HTML5 ๊ฐ์
์น์ ์ญ์ฌ
์๋ ์์ด๋ ์น(World Wide Web)์ ์ธํฐ๋ท์ ์ฐ๊ฒฐ๋ ์ปดํจํฐ๋ฅผ ํตํด ์ฌ๋๋ค์ด ์ ๋ณด๋ฅผ ๊ณต์ ํ ์ ์๋ ์ ๋ณด ๊ณต๊ฐ์ ์๋ฏธํฉ๋๋ค.
์ธํฐ๋ท์ ์ ์ธ๊ณ๋ฅผ ์ฐ๊ฒฐํ๋ ๊ตญ์ ์ ๋ณด ํต์ ๋ง
์ด๊ณ ์น์ ๊ทธ ์์์ ์๋ํ๋ ์๋น์ค
๋ก ์๋ก ๊ตฌ๋ถ๋๋ ๊ฐ๋
์
๋๋ค.
ํ๋ฌ๊ทธ์ธ
์น ๋ธ๋ผ์ฐ์ ์ ๊ฒฝ์์ผ๋ก ์น์ ์์ฒญ๋ ์๋๋ก ๋ฐ์ ํ์ต๋๋ค. ์น ํ์ค์ ์ง์ ํ๋ W3C๊ฐ ๊ทธ ์๋๋ฅผ ๋ฐ๋ผ๊ฐ์ง ๋ชปํ์ ์ ๋์์ต๋๋ค.
์ด์ ๋ถ๋ง์ ๋๋ ๊ธฐ์
๋ค์ด ํ๋ฌ๊ทธ์ธ
์ ๋ง๋ญ๋๋ค. ํ๋ฌ๊ทธ์ธ์ ์น ๋ธ๋ผ์ฐ์ ์ ์ฐ๋๋๋ ํน์ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉ์ PC์ ์ถ๊ฐ๋ก ์ค์นํด ์น ๋ธ๋ผ์ฐ์ ์ ๊ธฐ๋ฅ์ ํ์ฅํ๋ ๋ฐฉ๋ฒ์
๋๋ค.
์น 2.0์ ์๋
์ธํฐ๋ท์ ์ ์ ์ฌ์ฉ์๋ผ๋ฆฌ ๋ญ์ณ ์๋ก์ด ์ฝํ
์ธ ๋ฅผ ๊ฐ๋ฐํ ์ ์๋ ๊ณต๊ฐ์ผ๋ก ๋ฐ์ ํฉ๋๋ค. ์ด๋ ๋ฏ ๋ค๋ฅธ ์ฌ์ฉ์์ ํจ๊ป ์๋ก์ด ์ฝํ
์ธ ๋ฅผ ์ฐฝ์กฐํ ์ ์๊ฒ ๋ ์๋๋ฅผ ์น 2.0 ์๋๋ผ๊ณ ๋ถ๋ฆ
๋๋ค.
๋ชจ๋ ์น ์ฌ์ดํธ์ ํ๋ฌ๊ทธ์ธ์ด ๋ค์ด๊ฐ๋ฉด์ ์น ์ฌ์ดํธ๋ ์ ์ ๋ฌด๊ฑฐ์์ง๊ฒ ๋ฉ๋๋ค.
HTML5๋ฅผ ๊ณต๋ถํด์ผํ๋ ์ด์
๋๋ฐ์ด์ค์ ์ด์์ฒด์ ์ ๋ฐ๋ผ ๊ฐ๊ฐ์ ์ด์์ฒด์ ์ ๋ง๋ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํด์ผํฉ๋๋ค. ํ์ง๋ง ์ด์์ฒด์ ์ ์ข ์๋์ง ์๊ณ ์น์์ ๋์ํ๋ ํ๋ก๊ทธ๋จ์ด๋ผ๋ฉด ๋ชจ๋ ๋๋ฐ์ด์ค์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ผ๋ ํธ๋ก (electron)
๊นํ์์ ์ํฐ(atom)
์๋ํฐ๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ํฐ ์์ด๋ผ๋ HTML5 ๊ธฐ๋ฐ์ ๋ฐ์คํฌํฑ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ ์์ง์ ๊ฐ๋ฐํฉ๋๋ค. ์ด ์์ง์ด ์ดํ ์ผ๋ ํธ๋ก ์ด ๋ฉ๋๋ค.
์ด ์์ง์ ํตํด ์ค์นด์ดํ, ๋น์ฃผ์ผ ์คํ๋์ค ์ฝ๋(์ค์), ์ฌ๋ ๋ฑ์ด ๊ฐ๋ฐ๋๋ฉด์ ์ ๋ช
ํด์ก์ต๋๋ค.
๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ(React-Native)
ํ์ด์ค๋ถ์์ ๊ฐ๋ฐํ ์์ง์ผ๋ก ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ง๋๋ ๊ฒ์ ํนํ๋์ด์์ต๋๋ค. ํ์ด์ค๋ถ, ์ธ์คํ๊ทธ๋จ, ํํฐ๋ ์คํธ, ์ค์นด์ดํ, ์ฐ๋ฒ ๋ฑ์ด ๋ชจ๋ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ก ๊ฐ๋ฐ๋์์ต๋๋ค.
๋ค์ ๋งํด, HTML5๋ฅผ ์๋ฉด ์ด์์ฒด์ ์ ์ํฅ์์ด ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ง๋ค ์ ์์ต๋๋ค! ๐ฅ
๐ 2. HTML5 ํ๊ทธ ๊ธฐ๋ณธ
HTML5 ํ์ด์ง ๊ตฌ์กฐ
<!DOCTYPE html>
<html>
<head>
<title>Hello Jayden</title>
</head>
<body></body>
</html>
<!DOCTYPE html>
ํ๊ทธ๋ ์น ๋ธ๋ผ์ฐ์ ๊ฐ ํ์ฌ ์น ํ์ด์ง๊ฐ HTML5 ๋ฌธ์์์ ์ธ์ํ๊ฒ ๋ง๋ค์ด์ค๋๋ค.<html>
ํ๊ทธ๋ ๋ชจ๋ HTML ํ์ด์ง์ ๋ฃจํธ ์์๋กlang
์์ฑ์ ์ ๋ ฅํ ์ ์์ต๋๋ค. ์ด ๋,lang
์์ฑ์ ์ค์ ์น ๋ธ๋ผ์ฐ์ ๊ฐ ๋์ํ๋๋ฐ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋จ์ง ๊ฒ์ ์์ง์ด ์น ํ์ด์ง๋ฅผ ํ์ํ ๋ ์ด๋ ํ ์ธ์ด๋ก ๋ง๋ค์ด์ ธ ์๋์ง ์ฝ๊ฒ ์ธ์ํ๊ฒ ๋ง๋ค์ด์ค๋๋ค.<head>
ํ๊ทธ๋ body ํ๊ทธ์ ํ์ํ ์คํ์ผ์ํธ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ ๊ณตํ๋๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.- head ํ๊ทธ์ ๋ค์ด๊ฐ๋ ํ๊ทธ : meta, title, script, link, style, base
(์ด ์ธ์ ํ๊ทธ๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋์ผ๋ก ํด๋น ํ๊ทธ๋ฅผ body ํ๊ทธ ๋ด๋ถ๋ก ์ฎ๊น๋๋ค.)
- head ํ๊ทธ์ ๋ค์ด๊ฐ๋ ํ๊ทธ : meta, title, script, link, style, base
<body>
ํ๊ทธ๋ ์ฌ์ฉ์์๊ฒ ๋ณด์ด๋ ์ค์ ๋ถ๋ถ์ ๋๋ค.
๊ธ์ ํ๊ทธ
์ต์ปค ํ๊ทธ
<a href="#">Jayden</a>
<a href="#smite">Move to smite</a>
<div id="smite">Smite</div>
- ๋น ๋งํฌ : a ํ๊ทธ๋ ๋ณธ๋ ๊ฐ์ง๊ณ ์๋ ํ์ดํผ๋งํฌ ๊ธฐ๋ฅ์ ์ ๊ฑฐํ๊ณ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ์์ต๋๋ค. ์ด ๋, ์น ํ์ค ์ href ์์ฑ์ ๋ฐ๋์ ์ ๋ ฅํด์ผํ๊ธฐ ๋๋ฌธ์ #์ ์ ๋ ฅํฉ๋๋ค.
- ํ์ด์ง ๋ด๋ถ ์ด๋ : ์์ ๊ฐ์ด aํ๊ทธ์ href ์์ฑ์ ์ด๋ํ๊ณ ์ถ์ ํ๊ทธ์ id๋ฅผ #๊ณผ ํจ๊ป ์ ๋ ฅํ๋ฉด ํด๋น ์ฅ์๋ก ์ด๋ํ ์ ์์ต๋๋ค.
์ ๋ ฅ ์์ ํ๊ทธ
<form method="get">
<!-- ๋๋ 'post' -->
<input type="text" />
<input type="submit" />
</form>
<form>์ method
- GET : ์ฃผ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํด์ ์ ๋ฌ(? ๋ค์ ์ค๋ ์ฟผ๋ฆฌํํ)ํฉ๋๋ค. ๊ทธ๋ ๊ธฐ์ ํฌ๊ธฐ๊ฐ ํ์ ๋์ด์์ต๋๋ค.
- POST : ๋ณ๋๋ก ํ๋ฐฐ๋ฅผ ๋ถ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ ์ฉ๋์ ์ ํ์ด ์์ต๋๋ค.(์ฃผ์์ ๋ฐ์ดํฐ๊ฐ ์ ๋ ฅ๋์ง ์์ต๋๋ค.)
<input>
ํ๊ทธ๋ ์ฌ์ฉ์์๊ฒ ์ ๋ณด๋ฅผ ์ ๋ ฅ๋ฐ๋ ๊ธฐ๋ฅ์ ์ํํ๋ ํ๊ทธ์ ๋๋ค.(ํด๋ผ์ด์ธํธ์๊ฒ ์ ๋ ฅ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ์๋ฒ๋ก ์ ์ก)
โญ ๊ณต๊ฐ ๋ถํ ํ๊ทธ
<div>
ํ๊ทธ๋ block ํ์์ผ๋ก ๊ณต๊ฐ์ ๋ถํ ํ๊ณ <span>
ํ๊ทธ๋ inline ํ์์ผ๋ก ๊ณต๊ฐ์ ๋ถํ ํฉ๋๋ค.
- block ํ์ : ๋ธ๋ก์ ์๋ฏ ๊ณต๊ฐ์ด ๋ฐฐ์น๋๋ ํํ์ ๋๋ค. ํด๋นํ๋ ํ๊ทธ๋ div, h1~h6, p, ๋ชฉ๋ก ํ๊ทธ, ํ ์ด๋ธ ํ๊ทธ, form ํ๊ทธ๊ฐ ์์ต๋๋ค.
- inline ํ์ : ํ์ค๋ก ์ญ์ฐ์ฐ์ฑ ๋ฐฐ์น๋๋ ํํ์ ๋๋ค. ํด๋นํ๋ ํ๊ทธ๋ span, a, input, ๊ธ์ ํ์ ํ๊ทธ๊ฐ ์์ต๋๋ค.
๐ HTML5์ ์๋ฉํฑ ๊ตฌ์กฐ ํ๊ทธ
์๋ฉํฑ(semantic)์ ์๋ฏธ๋ก ์
์ด๋ผ๋ ์๋ฏธ๋ก ๋ง ๊ทธ๋๋ก ๊ธฐ์กด์๋ div๋ก๋ง ๋ํ๋ด๋ ํ๊ทธ๋ค์ ๊ฐ๊ฐ์ ์๋ฏธ(์ญํ )๋ฅผ ๋ถ์ฌํ๋ ๊ฒ์ ๋งํฉ๋๋ค.
header
: ํค๋nav
: ๋ด๋น๊ฒ์ด์ aside
: ์ฌ์ด๋ ๊ณต๊ฐsection
: ์ฌ๋ฌ ์ค์ฌ ๋ด์ฉ์ ๊ฐ์ธ๋ ๊ณต๊ฐarticle
: ๊ธ์๊ฐ ๋ง์ด ๋ค์ด๊ฐ๋ ๋ถ๋ถfooter
: ํธํฐ
์ด์ธ์๋ ๊ต์ฅํ ๋ง์ ์๋ฉํฑ ํ๊ทธ๊ฐ ์์ต๋๋ค. ์์ ํ๊ทธ๋ค์ ๋ณธ์ง์ ์ผ๋ก div์ ๊ฐ์ ์ญํ ์ ์ํํฉ๋๋ค. ๋ค๋ง, ๊ฒ์ ์์ง์ด๋ ๊ทธ ์ด์ธ์ ๊ธฐ๊ณ์ ์ธ ๋์๋ค์ด ๋ ์ฝ๊ฒ ์น ํ์ด์ง๋ฅผ ์ดํดํ ์ ์๊ฒ ํด์ค๋๋ค.
์๋ฉํฑ ํ๊ทธ ์
<!DOCTYPE html>
<html>
<head>
<title>HTML Basic</title>
</head>
<body>
<div>
<h1>HTML5 Header</h1>
</div>
<div>
<ul>
<li><a href="#">Menu - 1</a></li>
<li><a href="#">Menu - 2</a></li>
<li><a href="#">Menu - 3</a></li>
</ul>
</div>
<div>
<div>
<h1>Lorem ipsum dolor sit amet</h1>
<p>์๋
ํ์ธ์, ์ ์ด๋ ์
๋๋ค.</p>
</div>
<div>
<h1>Lorem ipsum dolor sit amet</h1>
<p>๋ง๋์ ๋ฐ๊ฐ์ต๋๋ค.</p>
</div>
</div>
<div>
<span>์์ธํน๋ณ์</span>
</div>
</body>
</html>
์๋ฉํฑ ํ๊ทธ ํ
<!DOCTYPE html>
<html>
<head>
<title>HTML Basic</title>
</head>
<body>
<div>
<h1>HTML5 Header</h1>
</div>
<div>
<ul>
<li><a href="#">Menu - 1</a></li>
<li><a href="#">Menu - 2</a></li>
<li><a href="#">Menu - 3</a></li>
</ul>
</div>
<div>
<div>
<h1>Lorem ipsum dolor sit amet</h1>
<p>์๋
ํ์ธ์, ์ ์ด๋ ์
๋๋ค.</p>
</div>
<div>
<h1>Lorem ipsum dolor sit amet</h1>
<p>๋ง๋์ ๋ฐ๊ฐ์ต๋๋ค.</p>
</div>
</div>
<div>
<span>์์ธํน๋ณ์</span>
</div>
</body>
</html>