โ๏ธ CSS ( Cascading Style Sheets )
- ์น ํ์ด์ง ์คํ์ผ ๋ฐ ๋ ์ด์์์ ์ ์ํ๋ ์คํ์ผ ์ํธ ์ธ์ด.
- ๋ ๋์ UX (์ฌ์ฉ์ ๊ฒฝํ)์ ์ ๊ณตํ๊ธฐ ์ํด CSS๋ก UI ๋ฐ ๋ ์ด์์์ ์ฃฝ์ ํ ๊ตฌ์ฑํ๋ฉด ๋ฉ์ง ์นํ์ด์ง๋ฅผ ๋ง๋ค ์ ์๋ค.
๐ช ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๊ฐ ๋๋ ค๋ฉด ์ด์ ๋์ CSS๋?
โ ์ปดํฌ๋ํธ ๊ธฐ๋ฅ๋ณ๋ก ๋ฌถ์ด์ ์ ์
โ ํ๋ฉด์ ๊ตฌ์ฑ์ด๋ ๋ฐฐ์น (๋ ์ด์์ ์ ์)
โ ๊ตต์ ๊ธ์จ์ ํ์ดํฌ๊ทธ๋ํผ์ ์์์ ์ ์ฉํ๋ ์ผ ๋ฑ...
+ ์ ๋ ฌ์ด๋ ๋ฐฐ์์ ๋ํ ๊ฐ๊ฐ
+ UX์ ๋ํ์ฌ ๊ณ ๋ฏผํด๋ณด๊ณ , UX๊ฐ ์ ์ ์ฉ๋ ์น์ด๋ ์ฑ์ ๋ถ์ํด ๋ณธ ๊ฒฝํ ๋ฑ..
โ๏ธ CSS ํ์ผ์ HTML๊ณผ ์ฐ๊ฒฐํ๊ธฐ
index.html
๊ณผindex.css
๋ผ๋ ํ์ผ์ด ์๋ค๊ณ ๊ฐ์ ํด๋ณด์.
์ฐ๋ฆฌ๋ ๋งํฌ์ ์ ๋๋ธ HTML ํ์ผ์ CSS๋ฅผ ํตํด์ ์คํ์ผ์ ์ ์ฉ์ ํ ๊ฒ์ด๋ค.
์ด๋, ์ฐ๋ฆฌ๋ HTML ํ์ผ์ < head > ๋ผ๋ ๋ถ๋ถ์,<link rel="stylesheet" href="./index.css">
๋ผ๊ณ ๋ฃ์ด์ ์ฐ๊ฒฐ์ ํด์ฃผ๋ฉด ๋๋ค.
block | inline-block | inline | |
---|---|---|---|
์ค ๋ฐ๊ฟ ์ฌ๋ถ | ์ค ๋ฐ๊ฟ ๊ฐ๋ฅ | ์ค ๋ฐ๊ฟ ๋ถ๊ฐ๋ฅ | ์ค ๋ฐ๊ฟ ๋ถ๊ฐ๋ฅ |
๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ๋ ๋๋น (width) | 100% | ๊ธ์๊ฐ ์ฐจ์งํ๋ ๋งํผ | ๊ธ์๊ฐ ์ฐจ์งํ๋ ๋งํผ |
width, height ์ฌ์ฉ๊ฐ๋ฅ์ฌ๋ถ | ๊ฐ๋ฅ | ๊ฐ๋ฅ | ๋ถ๊ฐ๋ฅ |
์ค ๋ฐ๊ฟ์ด ๋๋ ๋ฐ์ค(block) vs. ์์ผ๋ก ๋ถ๋ ๋ฐ์ค(inline, inline-block)
block : <div>, <p>
line : <span>
border
(ํ
๋๋ฆฌ)๋ฅผ ๊ธฐ์ค์ผ๋ก padding
(์์ชฝ ์ฌ๋ฐฑ)๊ณผ margin
(๋ฐ๊นฅ ์ฌ๋ฐฑ)p {
border: 1px solid red; //p ์์์ 1px์ ๋นจ๊ฐ์ ์ค์ ์ ์ถ๊ฐ.
}
โกborder ์์ฉ
border-width
: ํ
๋๋ฆฌ ๋๊ปborder-style
: ํ
๋๋ฆฌ ์คํ์ผborder-color
: ํ
๋๋ฆฌ ์์p {
margin: 10px 20px 30px 40px; //top, right, bottom, left๋ก ์๊ณ๋ฐฉํฅ
}
โกmargin์ ๊ฐ์ด ๋ค์ด๊ฐ๋ ๊ฐฏ์๊ฐ ๋ค๋ฅผ์๋ ์๋ค.
p {
margin: 10px 20px; //top๊ณผ bottom์ด 10px, left ๋ฐ right๊ฐ 20px
}
p {
margin: 10px; //๋ชจ๋ ๋ฐฉํฅ์ ๋ฐ๊นฅ ์ฌ๋ฐฑ 10px
}
p {
padding: 10px 20px 30px 40px; //top, right, bottom, left๋ก ์๊ณ๋ฐฉํฅ
}
* {}
h1 {}
div {}
h1,div{}
#id
๋ก ์
๋ ฅํ์ฌ ์ ํ.#password {}
.class
๋ก ์
๋ ฅํ์ฌ ์ ํ..friend {}
- ์ฒซ ๋ฒ์งธ๋ก ์
๋ ฅํ ์์์ ๋ฐ๋ก ์๋ ์์์ธ ์์๋ฅผ ์ ํ.
header > div { }
โ ์์ : <header>์ ๋ฐ๋ก ์ํ ๊ฒ๋ง ์ ํํ๋ฏ๋ก ์ง์ <div>๋ง ์ ํํจ.
<<header>
<div> <!-- ์ ํ -->
<p>
<div></div>
</p>
</div>
<div> <!-- ์ ํ -->
<p>
<div></div>
</p>
</div>
</header>
- ์ฒซ ๋ฒ์งธ๋ก ์
๋ ฅํ ์์์ ํ์์ ์ ํ.
header div {}
โ ์์ : <header>์ ํ์์ ์ ํํ๋ฏ๋ก ๋ชจ๋ <div>๋ฅผ ๋ค ์ ํํจ.
<header>
<div><!-- ์ ํ -->
<p>
<div><!-- !!์ ํ!! -->
</div>
</p>
</div>
<div><!-- ์ ํ -->
<p>
<div><!-- !!์ ํ!! -->
</div>
</p>
</div>
</header>
- ๊ฐ์ ๋ถ๋ชจ ์์๋ฅผ ๊ณต์ ํ๋ฉด์, ์ฒซ ๋ฒ์งธ ์
๋ ฅํ ์์ ๊ท์ ์ค๋ ๋ ๋ฒ์งธ ์์๋ฅผ ๋ชจ๋ ์ ํ.
section ~ p { }
โ ์์ : <section> ๋ค์ ์ค๋ฉด์ ๊ฐ์ ๋ ๋ฒ์งธ ์์์ธ <p>๋ฅผ ๋ชจ๋ ์ ํํจ.
<header>
<section></section>
<p></p> <!-- ์ ํ -->
<p></p> <!-- ์ ํ -->
<p></p> <!-- ์ ํ -->
</header>
- ๊ฐ์ ๋ถ๋ชจ ์์๋ฅผ ๊ณต์ ํ๋ฉด์, ์ฒซ ๋ฒ์งธ ์
๋ ฅํ ์์ ๋ฐ๋ก ๋ค์ ์ค๋ ๋ ๋ฒ์งธ ์
๋ ฅํ ์์๋ฅผ ์ ํํจ.
section + p { }
โ ์์ : <section>์ ๊ฐ์ ๋ ๋ฒ์งธ ์์์ธ <p>ํ๊ทธ ์ค ๋ฐ๋ก ๋ค์ ์๋ ๊ฒ์ ์ ํํจ.
<header>
<section></section>
<p></p> <!-- ์ ํ -->
<p></p>
<p></p>
</header>
- ๊ฐ์ ํด๋์ค๋ ์์์ ์ํ ์ ๋ณด์ ๊ธฐ๋ฐํด ์์๋ฅผ ์ ํ.
a:link { } /*์ฌ์ฉ์๊ฐ ๋ฐฉ๋ฌธํ์ง ์์ <a>์์๋ฅผ ์ ํ.*/
a:visited { } /*์ฌ์ฉ์๊ฐ ๋ฐฉ๋ฌธํ <a>์์๋ฅผ ์ ํ. */
a:hover { } /* ๋ง์ฐ์ค๋ฅผ ์์ ์์ ์ฌ๋ ธ์ ๋ ์ ํ. */
a:active { } /* ํ์ฑํ ๋(ํด๋ฆญ๋) ์ํ์ผ ๋ ์ ํ. */
a:focus { } /* ํฌ์ปค์ค๊ฐ ๋ค์ด์ ์์ ๋ ์ ํ. */
์ด์ ๋ง๋ HTML์ CSS๋ฅผ ๋ํด์ ๊ณผ์ ๋ก ๋ง๋ ๐ฅ์๊ธฐ์๊ฐ ํ์ด์ง ๋ง๋ค๊ธฐ๐ฅ