- ๋ด๋ถ ์คํ์ผ ์ํธ -> head ํ๊ทธ ์์์ ์ ์ํ๊ณ style ํ๊ทธ ์ฌ์ด์ ์์ฑ
- ์ธ๋ถ ์คํ์ผ ์ํธ -> head ํ๊ทธ์์ link ํ๊ทธ ์์ ์ฐ๊ฒฐ
- ์ ์ฒด ์ ํ์๋ฅผ ์ด์ฉํ์ฌ ์น ๋ฌธ์ ์ ์ฒด์ ๋ง์ง๊ณผ ํจ๋ฉ ์ฌ๋ฐฑ์ 0์ผ๋ก ์ง์ -> ์ฌ๋ฐฑ ์์จ ์ ์์
id ์ ํ์๋ ์ค๋ณตํด์ ์ ์ฉํ ์ ์์ผ๋ฏ๋ก ์ฃผ๋ก ๋ฌธ์์ ๋ ์ด์์๊ณผ ๊ด๋ จ๋ ์คํ์ผ์ ์ง์ ํ๊ฑฐ๋ ์น ์์์ ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๋ฉด์ ์์๋ฅผ ๊ตฌ๋ณํ ๋ ์ฌ์ฉํ๋ค.
CSS์์ C๋ ์บ์ค์ผ์ด๋ฉ์ ์ค์๋ง, ์ฐ์ ์์๊ฐ ์์์ ์๋, ์ฆ ๊ณ๋จ์์ผ๋ก ์ ์ฉ๋๋ค๋ ์๋ฏธ
1) ์คํ์ผ ์ฐ์ ์์
2) ์คํ์ผ ์์
- ์ฌ์ฉ์ ์คํ์ผ > ์ ์์ ์คํ์ผ > ๋ธ๋ผ์ฐ์ ๊ธฐ๋ณธ ์คํ์ผ
- ์คํ์ผ ๊ท์น์ !important ๋ฅผ ๋ถ์ด๋ฉด ๊ทธ ์คํ์ผ์ ๋ค๋ฅธ ์คํ์ผ๋ณด๋ค ์ฐ์ ์์๊ฐ ๋์์ง๋ค.
- !important > ์ธ๋ผ์ธ ์คํ์ผ > id ์คํ์ผ > ํด๋์ค ์คํ์ผ > ํ์ ์คํ์ผ
- ์ค์๋์ ์ ์ฉ๋ฒ์๊ฐ ๊ฐ๋ค๋ฉด ๊ทธ๋ค์์ ์คํ์ผ์ ์ ์ํ ์์ค ์์๋ก ์ฐ์ ์์๊ฐ ์ ํด์ง๋ค.
- ์์ ์์์์ ๋ณ๋๋ก ์คํ์ผ์ ์ง์ ํ์ง ์์ ์ ๋ถ๋ชจ ์์์ ์คํ์ผ ์์ฑ๋ค์ด ์์์์๋ก ์ ๋ฌ๋๋๊ฒ
- body ํ๊ทธ๋ ์น ๋ฌธ์์ ์ฌ์ฉํ ๋ชจ๋ ํ๊ทธ์ ๋ถ๋ชจ ์์!
- ๋ฐฐ๊ฒฝ์๊ณผ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ ์คํ์ผ ์์์ด ๋์ง ์๋๋ค.
- ์์ ์๋ ์ ๋ ํฌ๊ธฐ ๋จ์๋ฅผ ๋ง์ด ์ฌ์ฉํ์ง๋ง(px,pt) ๋ชจ๋ฐ์ผ ๊ธฐ๊ธฐ๊น์ง ๊ณ ๋ คํด์ผ ํ๋ ์์ฆ์๋ ์๋ ํฌ๊ธฐ ๋จ์์ธ em์ด๋ rem ๋ง์ด ์ฌ์ฉ
- ์ดํค๋ฆญ์ฒด๋ก ๊ธ์๋ฅผ ํ์ํ๋ font-style ์์ฑ
- font-weight : 400=normal, 700=bold
-> 100~900 ๋ฒ์
๐ก ๊ธ๊ผด์ด ํฐํธ์ ๊ด๋ จ๋์ด์๋ค๋ฉด ํ ์คํธ ์คํ์ผ์ ๋จ์ด, ๋ฌธ๋จ์์ ์ฌ์ฉํ๋ ์คํ์ผ
- ๋ธ๋ก ๋ ๋ฒจ ์์๋ ํ๊ทธ๋ฅผ ์ฌ์ฉํด ์์๋ฅผ ์ฝ์ ํ์ ๋ ํผ์ ํ ์ค์ ์ฐจ์งํ๋ ๊ฒ
- ์์์ ๋๋น๊ฐ 100%
- ๋ํ์ ์ธ ํ๊ทธ > h1, div, p
์ธ๋ผ์ธ ๋ ๋ฒจ ์์๋ฅผ ๋ง๋๋ ํ๊ทธ > span, img, strong
- ์ฝํ ์ธ ์์ญ์ ํฌ๊ธฐ๋ฅผ ์ง์ ํ๋ width, height ์์ฑ
- ๋ฐฑ๋ถ์จ : ๋ฐ์ค ๋ชจ๋ธ์ ํฌํจํ๋ ๋ถ๋ชจ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐฑ๋ถ์จ ์ง์
๐ก ๊ตฌ๊ธ ํฐํธ๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์๋ ์ฌ๋ฌ๊ฐ์ง ์น ํฐํธ๋ฅผ ์ ๊ณตํ๋ฏ๋ก ์น ๋ฌธ์์ ๋งํฌํด์ ์ฝ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅ
๐ก css์์๋ ์์์ ์ง์ ํ ๋ ์ฃผ๋ก rgb์ rgba๋ก ํํ
โ ๋ฌธ์ ์ ์ฒด๋ฅผ ํ๋ฉด ์ค์์ ๋ฐฐ์นํ๋ ค๋ฉด ๋ฐ๋์ ๋๋น๊ฐ์ด ์ง์ ๋์ด ์์ด์ผ ํ๋ค.
- p ํ๊ทธ๋ ๋ธ๋ก๋ ๋ฒจ ์์์ด์ง๋ง float ์์ฑ์ ์ฌ์ฉํ๋ฉด ์ด๋ฏธ์ง๋ฅผ ํ์ํ๊ณ ๊ทธ ์ฃผ๋ณ์ ํ ์คํธ๊ฐ ๋๋ฌ ์ธ๋๋ก ํ ์ ์๋ค.
- float ์์ฑ : ์น ์์๋ฅผ ๋ฌธ์ ์์ ๋ ์๊ฒ ๋ง๋ ๋ค.
-> ์์๊ฐ ์ผ์ชฝ๊ตฌ์์ด๋ ์ค๋ฅธ์ชฝ ๊ตฌ์์ ๋ฐฐ์น๋๋ค๋ ๊ฒ- clear : float ์์ฑ์ ํด์ ํ๋ ์์ฑ
- display: inline-block์ ๊ธฐ๋ณธ ๋ง์ง๊ณผ ํจ๋ฉ์ ๊ฐ์ง๊ณ ์์ง๋ง float๋ x ๊ทธ๋ฆฌ๊ณ float๋ clear ์์ฑ์ผ๋ก ํด์ ํ์
- align-self : ๊ต์ฐจ์ถ์ ์๋ ๊ฐ๋ณ ํญ๋ชฉ์ ์ ๋ ฌ ๋ฐฉ๋ฒ
- align-content : ๊ต์ฐจ์ถ์์ ์ฌ๋ฌ ์ค๋ก ํ์๋ ํญ๋ชฉ์ ์ ๋ ฌ ๋ฐฉ๋ฒ
- flex-flow ์์ฑ์ flex-direction๊ณผ flex-wrap ์์ฑ์ ํ๊บผ๋ฒ์ ์ง์ ํ์ฌ ๋ฐฐ์น๋ฐฉํฅ์ ๊ฒฐ์ ํ๊ฑฐ๋ ์ค์ ๋ฐ๊พผ๋ค. ๊ธฐ๋ณธ๊ฐ์ row nowrap
- justify-content
- align-items
- baseline-๊ต์ฐจ์ถ์ ๋ฌธ์ ๊ธฐ์ค์ ์ ๋ง์ถฐ ๋ฐฐ์น
- stretch - ํ๋ ์ค ํญ๋ชฉ์ ๋๋ ค ๊ต์ฐจ์ถ์ ๊ฐ๋ ์ฐจ๊ฒ ๋ฐฐ์น
- align-items์์ ํน์ ํญ๋ชฉ๋ง ์ง์ ํ๊ณ ์ถ๋ค๋ฉด align-self ์์ฑ์ ์ฌ์ฉ
- ์ฃผ์ถ์์ ์ค๋ฐ๊ฟ์ด ์๊ฒจ์ ํ๋ ์ค ํญ๋ชฉ์ ์ฌ๋ฌ ์ค๋ก ํ์ํ ๋ align-content ์์ฑ์ ์ฌ์ฉํ๋ฉด ๊ต์ฐจ์ถ์์ ํ๋ ์ค ํญ๋ชฉ ๊ฐ์ ๊ฐ๊ฒฉ์ ์ง์ ๊ฐ๋ฅ
(ํ ์ค์ธ ๊ฒฝ์ฐ๋ align-items ์์ฑ ์ฌ์ฉ)
- Grid - ๊ฐ๋ก์ ์ธ๋ก๋ฅผ ๋ชจ๋ ์ฌ์ฉ -> 2์ฐจ์์ด๋ผ๊ณ ๋งํ๋ค.
- ๊ทธ๋ฆฌ๋ ์ปจํ ์ด๋๋ฅผ ๋ง๋ค ๋๋ display ์์ฑ์ grid๋ inline-grid ๋ก ์ง์
- grid-template-colums -> ๊ทธ๋ฆฌ๋ ์ปจํ ์ด๋ ์์ ํญ๋ชฉ์ ๋ช๊ฐ์ ์นผ๋ผ์ผ๋ก ๋ฐฐ์นํ ์ง, ๊ฐ ์นผ๋ผ์ ๋๋น๋ฅผ ์ผ๋ง๋ก ํ ์ง ์ง์
- ๊ทธ๋ฆฌ๋ ๋ ์ด์์์์๋ ์๋์ ์ธ ํฌ๊ธฐ๋ฅผ ์ง์ ํ ์ ์๋๋ก fr ๋จ์ ์ฌ์ฉ
grid-template-columns: 1fr 1fr 1fr; grid-template-columns: repeat(3,1fr);
-> ์ค ๋์ด๋ฅผ 100px๋ก ์ง์ ํ์๊ฒฝ์ฐ ์ฒซ๋ฒ์งธ ๊ฐ๋ก์ค์ ๋๋ฒ์งธ ๋ฐ์ค์ ๋ด์ฉ์ด ์งค๋ ธ๋ค.
-> ํ์ง๋ง ์์ ๊ฐ์ด minmax()ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ด์ฉ์ด ๋ง์๋ ๋ค ํ์ํ ์ ์์๋งํผ ๋์ด๊ฐ ๋์ด๋๋ค.grid-template-rows: minmax(100px,auto);
- ์๋์ผ๋ก ์นผ๋ผ ๊ฐ์๋ฅผ ์กฐ์ ํ๋ auto-fill, auto-fit
grid-template-columns: repeat(auto-fit, 200px);
-> ๋๋น๊ฐ 200px ์ธ ์นผ๋ผ์ ํ๋ฉด ๋๋น์ ๊ฐ๋ ํ ๋๊น์ง ๋ฐฐ์น- auto-fit์ ํ๋ฉด์ด ๋์ ๋์๋ ๋จ๋ ๊ณต๊ฐ ์์ด ๊ฝ ์ฑ์์ ์นผ๋ผ์ ํ์
but auto-fill์ ์นผ๋ผ์ ์ต์ ๋๋น๋ง ํ์ํ๊ณ ๋จ๋ ๊ณต๊ฐ์ ๊ทธ๋๋ก ๋๋ค.- ๊ทธ๋ฆฌ๋ ํญ๋ชฉ์ ๊ฐ๊ฒฉ์ ์ง์ ํ๋ grid-column-gap, grid-row-gap, grid-gap
- ํ๋ ์๋ธ ๋ฐ์ค ๋ ์ด์์ : ๊ทธ๋ฆฌ๋ ๋ ์ด์์์ ๊ธฐ๋ณธ์ผ๋ก ํ๊ณ ๊ฐ ๋ฐ์ค๋ฅผ ์ํ๋ ์์น์ ๋ฐ๋ผ ๋ฐฐ์น
- CSS ๊ทธ๋ฆฌ๋ ๋ ์ด์์ : ์ํ๊ณผ ์์ง ์ด๋ ๋ฐฉํฅ์ด๋ ๋ฐฐ์น ๊ฐ๋ฅ
- line-height -> ์ค ๊ฐ๊ฒฉ์ ๊ธ์ ํฌ๊ธฐ์ 1.5~2๋ฐฐ๋ฉด ์ ๋นํ๋ค.
- line-height์ ๊ฐ์ height ๊ณผ ๋๊ฐ์ด ์ง์ ํ๋ฉด ์ธ๋ก๋ก ๊ฐ์ด๋ฐ ์ ๋ ฌ ๊ฐ๋ฅ
- static : ๋ฌธ์์ ํ๋ฆ์ ๋ง์ถฐ ๋ฐฐ์น. ๊ธฐ๋ณธ๊ฐ
- relative : ์์นซ๊ฐ์ ์ง์ ํ ์ ์๋ค๋ ์ ์ ์ ์ธํ๋ฉด static๊ณผ ๊ฐ๋ค.
- absolute : relative ๊ฐ์ ์ฌ์ฉํ ์์ ์์๋ฅผ ๊ธฐ์ค์ผ๋ก ์์น๋ฅผ ์ง์ ํด ๋ฐฐ์น
โabsolute ์ฌ์ฉํ ๋ ์ฃผ์! ๋ถ๋ชจ์์๋ฅผ relative๋ก ์ง์ ํด์ผ ํ๋ค.- fixed : ๋ธ๋ผ์ฐ์ ์ฐฝ์ ๊ธฐ์ค์ผ๋ก ์์น๋ฅผ ์ง์ ํด ๋ฐฐ์น
-> ์น ๋ธ๋ผ์ฐ์ ์์ ์คํฌ๋กคํ๋๋ผ๋ ํญ์ ๊ฐ์ ์์น์ ๋ํ๋๋ค.
link visited hover active
์ต์ปค๋ ํ์ด์ง๊ฐ ๊ธด ์น ๋ฌธ์์์ ํน์ ์์๋ฅผ ํด๋ฆญํ๋ฉด ๊ทธ ์์น๋ก ํ๋ฒ์ ์ด๋ํ๋๋ก ๋์์ฃผ๋ ๊ธฐ๋ฅ
์น ๋ฌธ์์ ๊ตฌ์กฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ํน์ ์์น์ ์๋ ์์๋ฅผ ์ฐพ์ ์คํ์ผ์ ์ ์ฉํ ๋ ์ฌ์ฉํ๋ ๊ฐ์ ํด๋์ค ์ ํ์
๋ฌธ์ ์์ ํน์ ๋ถ๋ถ์ ์คํ์ผ์ ์ง์ ํ๊ธฐ ์ํด ๊ฐ์์ผ๋ก ์์๋ฅผ ๋ง๋ค์ด ์ถ๊ฐํ๋ค.
๊ฐ์ ์์ ์ด๋ฆ ์์ ์ฝ๋ก 2๊ฐ๋ฅผ ๋ถ์ฌ ํ์ํ๋ค.
::first-line, ::first-letter
::before, ::after
- ์น ์์์ ์คํ์ผ ์์ฑ์ด ์๊ฐ์ ๋ฐ๋ผ ๋ฐ๋๋ ๊ฒ
- animation ์์ฑ์ ์ด์ฉํ๋ฉด ํธ๋์ง์ ๋ณด๋ค ๋ ์ฝ๊ฒ ์ ๋๋ฉ์ด์ ์ ๋ง๋ค ์ ์๋ค.
์ ๋๋ฉ์ด์ ์ด ์ค๊ฐ์ ์คํ์ผ์ด ๋ฐ๋๋ ์ง์ : ํคํ๋ ์
@keyframes ์์ฑ์ผ๋ก ์ ์
- ๋ฐ์ํ ์น ๋์์ธ์ ์น ์์๋ฅผ ํ๋ฉด ํฌ๊ธฐ์ ๋ง๊ฒ ์ฌ๋ฐฐ์นํ๊ณ ๊ฐ ์์์ ํ์ ๋ฐฉ๋ฒ๋ง ๋ฐ๊พธ์ด ์ฌ์ดํธ๋ฅผ ๊ตฌํํด์ค๋ค.
- ๋ทฐํฌํธ : ์ค๋งํธํฐ ํ๋ฉด์์ ์ค์ ๋ด์ฉ์ด ํ์๋๋ ์์ญ
- ๋ฏธ๋์ด ์ฟผ๋ฆฌ : ์ฌ์ดํธ์ ์ ์ํ๋ ์ฅ์น์ ๋ฐ๋ผ ํน์ ํ CSS ์คํ์ผ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
- @media ์์ฑ ์ฌ์ฉ
- ํ๋ฉด ํ์ ์์ฑ : ๊ฐ๋ก ๋ชจ๋ -> landscape, ์ธ๋ก ๋ชจ๋ -> portrait
- ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ ๋ ํ๋ฉด ํฌ๊ธฐ์ ๋ฐ๋ผ ์๋ก ๋ค๋ฅธ css๋ฅผ ์ ์ฉํ ๋ถ๊ธฐ์
-> ์ค๋จ์ - ๋ชจ๋ฐ์ผ ํผ์คํธ ๊ธฐ๋ฒ : ๋ชจ๋ฐ์ผ์ ๋จผ์ ๊ณ ๋ คํ์ฌ ๋ฏธ๋์ด ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋๊ฒ
- ๋ฏธ๋์ด ์ฟผ๋ฆฌ ์ ์ฉํ๊ธฐ
1) ์ธ๋ถ CSS ํ์ผ
link, @import
-> CSS ํ์ผ์ด ๋ง๊ณ ๊ท๋ชจ๊ฐ ํฐ ์ฌ์ดํธ ๊ฐ๋ฐ ์ link ํ๊ทธ ์ฃผ๋ก ์ฌ์ฉ
2) ์น๋ฌธ์์ ์ง์ ์ ์ํ๋ ๋ฐฉ๋ฒ
style ํ๊ทธ ์์์ media ์์ฑ์ ์ฌ์ฉํ์ฌ ์กฐ๊ฑด์ ์ง์ ํ๊ณ , ๊ทธ ์กฐ๊ฑด์ ๋ง๋ ์คํ์ผ ๊ท์น์ ์ ์
@media ๋ฌธ ์ฌ์ฉ