๋ค์ด๋ฒ html ๊ตฌํํ๊ธฐ _ 03. ZeroCho 2๊ฐ ์ ๋ฆฌ
๐ถ๋จผ์ ์ค๋์ ์ต์ข ๋ณธ ๋จผ์ ๐ถ
html ์ฝ๋
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>๋ค์ด๋ฒ</title> <!--์๋จ๋ฐ์ ๋จ๋ ์ด๋ฆ ํ์-->
<link rel="shortcut icon" type="image/x-icon" href="./favicon.ico"/>
<link rel="stylesheet" href="./naver.css">
</head>
<body>
<header>
<div id="header-center"> <!--๊ฐ์ด๋ฐ ์ ๋ ฌ์ฉ div -->
<div>
<span>๋ค์ด๋ฒ๋ฅผ ์์ํ์ด์ง๋ก</span>
<span>์ฅฌ๋์ด๋ค์ด๋ฒ</span>
<span>ํดํผ๋น</span>
</div>
<div id="header-search">
<h1>
<a href="https://www.naver.com">๋ค์ด๋ฒ</a>
<!-- ์ฃผ์(comment)์
๋๋ค -->
<!-- ์์ฑ(attribute)์
๋๋ค -->
</h1>
<h2>๊ฒ์์ฐฝ</h2>
<fieldset>
<legend>๊ฒ์</legend>
<input />
<button>์ํ</button>
<textarea></textarea>
</fieldset>
</div>
</header>
<nav>
<ul> <!-- unordered list ์ ๋ ฌ๋์ง ์์ ๋ฆฌ์คํธ--> <!--ol์ ์ ๋ ฌ ์ซ์-->
<li>๋ฉ์ผ</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>์นดํ</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>๋ธ๋ก๊ทธ</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>์ง์์ธ</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>์ผํ</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>๋ค์ด๋ฒํ์ด</li> <!--list item๋ฆฌ์คํธ ์์ดํ
-->
<li>๋ค์ด๋ฒ์ผํ</li>
</ul>
</nav>
<h2>์ค์๊ฐ ๊ฒ์์ด</h2>
<h3>์ฐํฉ๋ด์ค</h3>
<ol>
<li> ์ถฉ๊ฒฉ) ๋ฐฐ์ํ ๊ณต๋ถ ํ๊ธฐ ์ซ์ด ...</li>
<li> ์๋ณด) 11์๋ฌ ์์๋ html ๋๋ด์ผ .. </li>
</ol>
<h3>์ธ๋ก ์ฌ ๋ชฉ๋ก</h3>
<ul>
<li><img src="./๊ณต๊ฐ์ธ๋ก ๋ด์์ค.png" alt="๋ด์์ค" /></li>
<li><img src="./๊ตญ๋ฏผ์ผ๋ณด.png" alt="๊ตญ๋ฏผ์ผ๋ณด"></li>
</ul>
<h3>๋ก๊ทธ์ธ</h3>
<h3>๋ด์ค</h3>
<h3>์ผํ</h3>
<footer>
<div>๊ณต์ง์ฌํญ</div>
<div>creators</div>
<div>ํ์ฌ์๊ฐ</div>
</footer>
</body>
</html>
css
/* ์ ํ์ (selector)*/
#header-center{
margin:0 auto;
width:1080px;
}
div#header-search > h1{
width: 280px;
display: inline-block;
}
/*์์์ ํ์*/
#header-search h2{
display: inline-block;
}
#header-search fieldset {
width:520px;
display: inline-block;
}
HTML ๋ ์ด์์ (๋ฐฐ์น) ํ๋ ๋ฒ
1) ๊ฐ๋ก์ ๊ตฌ์ญ์ผ๋ก ๋๋ ์ค๋ค.
2) ๊ฐ๋ก๋ก ๋๋ ์ง ๊ตฌ์ญ๋ค ์ค ๊ฐ๋ก๋ก ๋๋ ์ ์๋ ๋ถ๋ถ์ ๋ ๋๋์ด์ค๋ค.
3) ๊ฐ๋ก๋ก ๋๋์ด์ง ์ ์๋๊ฒ ์์ผ๋ฉด ์ธ๋ก๋ก ๋๋์ด์ค๋ค.
์๋ฅผ ๋ค์ด ๊ทธ๋ฆผํ์ผ๋ก ๊ฐ๋ตํ๊ฒ ๊ทธ๋ ค๋ณด๋ฉด ์ ๋ ๊ฒ ๊ฐ๋ก์ค๋ก 1 2 3 ์ ํฐ ํ๋ก ๋๋์ด์ฃผ๊ณ ๋๋ ๊ตฌ์ญ์ ์ ์ ํ div ํ๊ทธ๋ฅผ ์ ๋ ฅํ๋ค. ๊ทธ ๋ค์์ ๋ ๊ฐ๋ก๋ก ๋๋์ด์ง ์ ์๋ ๋ถ๋ถ์ ๋๋์ด์ค๋ค. ๋ง์ฝ 1์ ๊ตฌ์ญ์ด ๋๋์ด์ง๋ค๋ฉด 1-2๋ 1์ ์์ํ๊ทธ๊ฐ ๋ ๊ฒ์ด๋ค.
<div> ํ๊ทธ
divํ๊ทธ๋ division์ ์ฝ์๋ก ์น์ฌ์ดํธ์ ๋ ์ด์์์ ๋ง๋ค๋ ์ฃผ๋ก ์ฌ์ฉํ๋ค. div๋ ์นํ์ด์ง์์ ๋ ผ๋ฆฌ์ ๊ตฌ๋ถ์ ์ ์ํ๋ ํ๊ทธ๋ค. div ํ๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๊ฐ์ ๊ตฌ์ญ์ ๋ฐฐ์นํ๊ณ css๋ฅผ ํ์ฉํ์ฌ ์คํ์ผ์ ์ ์ฉํ๋ค. ๊ทธ๋ฌ๋ ๊ตฌ์ญ์ ๋๋๋๋ง๋ค ๋จ์ํ <div></div> ๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด ๊ตฌ๋ณ์ด ์๋๋ค๋ ๋จ์ ์ ์ง๋๋ค. ๊ทธ๋์ div์ ๊ฐ์ id๋ฅผ ๋ถ์ฌ์ค๋ค.
<div id="header"></div>
์ด๋ ๊ฒ ์ ํํ๋ ์ด๋ค ๊ตฌ์ญ์ธ์ง ์๋ ค์ฃผ๋ ํ๊ทธ๋ค์ ์๋งจํฑ ๊ตฌ์กฐ ํ๊ทธ๋ผ๊ณ ๋ถ๋ฅธ๋ค.
์๋งจํฑ ๊ตฌ์กฐ ํ๊ทธ (Semantic Tag)
Semantic์ '์๋ฏธ๋ก ์ ์ธ' ์ด๋ผ๋ ๋ป์ ์ง๋ ํ์ฉ์ฌ๋ค. ๋ฐ๋ผ์ ์๋งจํฑ ํ๊ทธ๋ ์๋ฏธ๊ฐ ์๋ ํ๊ทธ๋ฅผ ์๋ฏธํ๋ค.
์๋งจํฑ ํ๊ทธ ์ฌ์ฉ์ ์ฅ์
1. ๊ฒ์์์ง์ต์ ํ(SEO): ๊ฒ์์์ง์ ํ๊ทธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ด์ง ๋ด ๊ฒ์ ํค์๋์ ์ฐ์ ์์๋ฅผ ํ๋จํ๋ค.
2. ์๊ฐ์ฅ์ ๊ฐ ์๋ ์ฌ์ฉ์๊ฐ ์คํฌ๋ฆฐ ๋ฆฌ๋๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด์ง๋ฅผ ํ์ํ ๋ ๋์์ด ๋๋ค.
์๋ฉํฑ ํ๊ทธ๋ฅผ ์ ํ๋ ํ, ์ ์์ฌํญ
- ์ฌ์ฉํ ํ๊ทธ๋ฅผ ๊ฒฐ์ ํ๊ธฐ ์ "์ฑ์ธ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฅ ์ ์ค๋ช ํ๊ณ ๋ํ๋ด๋ ์์๋ ๋ฌด์์ผ์ง ? " ์๋ฌธํด๋ณด๊ธฐ
- ์ฌ์ฉํ HTML ํ๊ทธ๋ ์คํ์ผ ๊ธฐ๋ฐ์ด ์๋ ์ฑ์์ง ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฒฐ์ ๋์ด์ผ ํ๋ค.
- โจ ์ด๋ป๊ฒ ๋ณด์ฌ์ผ ํ ์ง๋ CSS์ ์ฑ ์ !
header
- ํค๋ ์์ญ์ ์ฌ์ฉํ๋ ํ๊ทธ. ๋ก๊ณ ๋ฑ์ด ๋ค์ด์๋ค.
- ํ์ด์ง์ ์ ๋ชฉ๊ณผ ๊ฐ์ ์๊ฐ ๋ด์ฉ์ ํฌํจํ๋ค.
nav
- ๋ค๋น๊ฒ์ด์ ๋ฐ(๋ฉ๋ด) ์์ญ์ ์ฌ์ฉํ๋ ํ๊ทธ
- ๋ณดํต ๋ฉ๋ด,๋ชฉ์ฐจ ๋ฑ์ ์ฌ์ฉ๋๋ค.
main
- ์ง๋ฐฐ์ ์ธ ์ฝํ ์ธ ์์ญ์ ๋ํ๋ด๋ ํ๊ทธ
section
- article๋ณด๋ค ํฐ ์์ญ์ ๋ํ๋ผ ๋ ์ฌ์ฉํ๋ ํ๊ทธ
- ๊ตฌ์ฒด์ ์ธ ์๋งจํฑ ํ๊ทธ๊ฐ ์๋ ๋ฌธ์์ ๋ ๋ฆฝ์ ์ธ ์์ญ์ ๋ํ๋ธ๋ค.
- ํญ์ ์ ๋ชฉ์ด ์๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ค.
article
- ๋ณดํต ์ ๋ชฉ ํ๊ทธ์ ๋ฌธ๋จ ํ๊ทธ๋ฅผ ํฌํจํ๋ฉฐ, ๊ฐ๋ณ ์ฝํ ์ธ ์ ์ฌ์ฉํ๋ ํ๊ทธ
- ๊ฒ์๋ฌผ, ์ก์ง ๋๋ ์ ๋ฌธ ๊ธฐ์ฌ, ๋ธ๋ก๊ทธ ์์ฑ๊ธ, ์ ํ ์นด๋, ์ฌ์ฉ์๊ฐ ์ ์ถํ ๋๊ธ, ๋ํํ ์์ ฏ ๋ฑ์ด ์๋ค.
aside
- ์ฌ์ด๋ ์์ญ์ ์ฌ์ฉํ๋ ํ๊ทธ.
- ๋ณดํต top๋ฒํผ์ด๋ ๋ณธ๋ฌธ ์์ญ๊ณผ ๋ณ๊ฐ์ ๋ด์ฉ์ ํฌํจ
- ๊ฐ์ ์ ์ผ๋ก ๋ฌธ์์ ๊ด๋ จ๋ ๋ด์ฉ์ ๋ํ๋ธ๋ค. ์ฌ์ด๋๋ฐ ๋๋ ์ฝ์์ ์์๋ก ์ฌ์ฉ๋๋ค.
footer
- ํํฐ ์์ญ์ ์ฌ์ฉํ๋ ํ๊ทธ. ํ์ฌ์ ์ ๋ณด ๋ฑ์ด ๋ค์ด์๋ค.
- ์ผ๋ฐ์ ์ผ๋ก ์น์ ์ ์์ฑ์์ ๋ํ ์ ๋ณด, ์ ์๊ถ ๋ฐ์ดํฐ ๋๋ ๊ด๋ จ ๋ฌธ์์ ๋ํ ๋งํฌ๋ฅผ ํฌํจํ๋ค.
<div> ํ๊ทธ ๊ฐ์ด๋ฐ ์ ๋ ฌํ๊ธฐ
๊ฐ์ด๋ฐ ์ ๋ ฌํด์ผ ํ ์ฝํ ์ธ ๊ตฌ์ญ์ ๋จผ์ ๋ฌถ์ด์ฃผ๋๊ฒ์ด ์ค์ํ๋ค. <div>ํ๊ทธ ์ ์ฒด๊ฐ header ํ๊ทธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ด๋ฐ ์ ๋ ฌ๋๋ค๋ ์ ์ด ์ค์ํ๋ค. ์ฆ, ์ฝํ ์ธ ๋ค์ด ๊ฐ์ด๋ฐ ์ ๋ ฌ๋๋ ๊ฒ์ด ์๋ ๊ตฌ์ญ ์์ฒด๊ฐ, div ํ๊ทธ ์์ฒด๊ฐ ๊ฐ์ด๋ฐ ์ ๋ ฌ๋๋ค๋ ๊ฒ์ด๋ค. ๊ทธ๋์ div์ ๋๋น๋ฅผ ์ค์ฌ์ฃผ๋ฉด ์๋์ ์ผ๋ก div๊ฐ ๊ฐ์ด๋ฐ ์ ๋ ฌ์ด ๋๋ค.
<div style = "margin: 0 auto; width: 1080px;">
<!-- ๊ฐ์ด๋ฐ ์ ๋ ฌ์ฉ div-->
์์ ์ฝ๋์ ๊ฐ์ด html์๋ค css๋ฅผ ์ฐ๋ ๋ฐฉ์์ ์ธ๋ผ์ธ ์คํ์ผ์ด๋ผ๊ณ ํ๋ค. (๊ถ์ฅ X)
๋ฐ๋ผ์ CSSํ์ผ์ ๋ฐ๋ก ์์ฑํด์ค๋ค. ์์ ๊ฐ์ ์ฝ๋(๊ฐ์ด๋ฐ ์ ๋ ฌํ๊ณ ๋๋น๋ฅผ 1080px)๋ฅผ CSS์ ์ ์ผ๋ ค ํ๋๋ฐ CSS์ ์ ํ ์ฝ๋์ ํ๊ทธ๊ฐ ๋ญ์ง ๋ชจ๋ฅด๋ ๋ถ์์ฌ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ง๋ค์ด์ง๊ฒ ์ ํ์(selector)์ด๋ค.
๋จผ์ html ํ๊ทธ์ id ์ฆ, ์ด๋ฆ์ ์ ํด์ค๋ค. ์ ์ฝ๋๋ ๋ค์ด๋ฒ ๊ฐ์ฅ ์๋จ์ ๊ฒ์์ฐฝ ๋ถ๋ถ์ ๋ง๋๋ ค๋ ๋ชฉ์ ์ด๊ธฐ ๋๋ฌธ์ head-center์ด ์ข๊ฒ ๋ค.
<div id="header-center">
๊ทธ๋ฐ ๋ค์ CSS์ ์ฝ๋๋ฅผ ์ ์ด์ค๋ค.
div#header-center{
margin:0 auto;
width:1080px;
}
/*div ์๋ต๊ฐ๋ฅ*/
cf) ๋ง์ฝ html ์ฝ๋์ header-search ์์ h1์ ์ ํํ๊ณ ์ถ๋ค๋ฉด #header-center > h1์ ์ด์ฉํด ์ ์ด์ค๋ค.
์์์ ์ฃผ์ ์ฐธ๊ณ / ์์๋ ์์์ด๋ ๊ฐ์ ํจ๊ณผ๋ฅผ ์ง๋๋ค.
header-search > h1 {
width: 280px;
display: inline-block;
}
/*
#header-center h1 {
์์ ์ ํ์
}
*/
๊ทผ๋ฐ ์ฌ๊ธฐ์ html์ css์ ์กด์ฌ๋ฅผ ๋ชจ๋ฅด๋ cssํ์ผ์ ์กด์ฌ๋ฅผ ์ฝ๋์ ์ ์ด์ค๋ค. (7๋ฒ์งธ ์ค)
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<title>๋ค์ด๋ฒ</title> <!--์๋จ๋ฐ์ ๋จ๋ ์ด๋ฆ ํ์-->
<link rel="shortcut icon" type="image/x-icon" href="./favicon.ico"/>
<link rel="stylesheet" href="./naver.css">
</head>
์ด ์์น ๋ ๋ถ๋ถ์ user agent stylesheet ๋ค. ์ฆ, ๋ธ๋ผ์ฐ์ ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ํด์ฃผ๋ css !
html์ ์ ์ฉ๋ ํ๊ทธ๊ฐ divํ๊ทธ์๋ ์ํฅ์ ๋ฏธ์น๋ค๋ ๊ฒ๋ ์ค์ํ ์ ์ด๋ค.
โ ์กฐ์์ ์ ์ฉ๋ ํ๊ทธ๊ฐ ์์ํ๊ทธ๊ฐ ๋ฎ์ด ์์ด์ง๋ ๊ด๊ณ๊ฐ ํท๊ฐ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๊ธฐ์ตํด๋ ๊ฒ
โ css์ ์ ํ์์ ์์ฑ์ ์ธ์ฐ๋๊ฒ ๊ต์ฅํ ์ค์ํ๋ฏ๋ก ๋ฐ๋ก ์ ๋ฆฌํด๋ ๊ฒ
์ฌ๊ธฐ์ ์ ๋ค์ด๋ฒ ์์ ๊ฒ์์ฐฝ์ด ๋๋ํ ์์ค๋ ์ด์ ๋ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ค์ ๋์ด ์๋ display: block;์ ํญ์ ๋ง์ง์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ด๋ค. ์ฆ, ๊ธฐ๋ณธ์ ์ผ๋ก ์ฃผ์ด์ง๋ ๋ง์ง์ ์์ ๊ธฐ ์ํด dispaly: block;์ ๋ฐ๊ฟ์ฃผ๋ฉด๋๋ค. ๊ฐ์ฅ ๊ฐ๋จํ๊ฒ display๋ฅผ inline-block๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ ๋ง์ง์ด ์๋ ๊ณต๊ฐ์ ์๋ฌด๊ฒ๋ ๋ฃ์ ์ ์๋ ๊ฑด ์๋๋ค. ํฌ์ง์ ๋ฐฐ์ธ ๋ ๊ณต๋ถํ๋ฉด ๋๋ค. ๊ฐ๋จํ ์๊ณ ๋ง ์์ ๊ฒ !
#header-search > h1 {
width: 280px;
display: inline-block;
#header-search fieldset {
width: 520px;
display: inline-block;
}
๋ง์ฐฌ๊ฐ์ง๋ก ๊ธ์๋ฅผ ์ธ๋๋ ๋ง์ง ๋๋ฌธ์ ๊ธ์๊ฐ ๊ฐ๋ก๋ก ์ฐ์ฌ์ง๊ธฐ ๋๋ฌธ์ ์ธ๋ก๋ก ์ฐ๊ณ ์ถ๋ค๋ฉด ๊ฐ์ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๋๋ค.
<div style="display: inline-block">๋ค์ด๋ฒ๋ฅผ ์์ํ์ด์ง๋ก</div>
<div style="display: inline-block">์ฅฌ๋์ด๋ค์ด๋ฒ</div>
<div style="display: inline-block">ํดํผ๋น</div>
span ํ๊ทธ
๋, span์ด๋ ํ๊ทธ๋ฅผ ํตํด ๋ ๊ฐ๋จํ ๋ฐ๊ฟ ์ ์๋ค. span์ display๋ inline์ด๋ค.
<span>๋ค์ด๋ฒ๋ฅผ ์์ํ์ด์ง๋ก</span>
<span>์ฅฌ๋์ด๋ค์ด๋ฒ</span>
<span>ํดํผ๋น</span>
inline | inline-block | display-block |
์๊ธฐ ์ฝํ ์ธ ๋ง ์ฐจ์น | ๋๋น์ ๋์ด ์ง์ ๊ฐ๋ฅ | 100% ์ฐจ์ง |
๋น๊ณต๊ฐ์ ๋ง๋ค๊ธฐ ์ด๋ ต๋ค๋ ๋จ์ | ๋๋ํ ๋์ด์ด ์๋๋ค๋ ๋จ์ |