๐ Cascading Meaning of CSS
๋ธ๋ผ์ฐ์ ๊ฐ CSS์ฝ๋๋ฅผ ์ฝ์ ๋, ์์ ์๋ ์ฝ๋๋ถํฐ ์์๋๋ก ์ฝ๋๋ค๋ ์๋ฏธ.
์ฆ, ๋งจ ๋ง์ง๋ง์ ์๋ ์ฝ๋๊ฐ ์ ์ฉ
๐ Block
- ์์ ์์ ๋ค๋ฅธ ์์๊ฐ ์ฌ ์ ์์. (Box ๊ฐ๋ )
- ๋๋ถ๋ถ์ box๋ค์ block
<div>
,<p>
,<address>
,<header>
๋ฑ๋ฑ- block์ ํน์ง
- margin : box์ border(๊ฒฝ๊ณ)๋ก๋ถํฐ ๋ฐ๊นฅ์ ์๋ ๊ณต๊ฐ
* Collapsing margins: ์์box์ ๊ฒฝ๊ณ๊ฐ ๋ถ๋ชจbox์ ๊ฒฝ๊ณ์ ๊ฐ์ ๋ ์ผ์ด๋๊ณ , ๊ทธ ๋ ๋ box์ margin์ด ํ๋๊ฐ ๋จ. (์, ์๋์ชฝ๋ง ์ผ์ด๋จ)
- padding : box์ border(๊ฒฝ๊ณ)๋ก๋ถํฐ ์์ชฝ์ ์๋ ๊ณต๊ฐ
- border : box์ ๊ฒฝ๊ณ
- margin : box์ border(๊ฒฝ๊ณ)๋ก๋ถํฐ ๋ฐ๊นฅ์ ์๋ ๊ณต๊ฐ
๐ Inline
- ํ๋์ ์์ ์์ ๋ค๋ฅธ ์์ ์ฌ ์ ์๋ค. ์ฆ ๊ฐ์ ์ค์ ์์นํ ์ ์๋ค.
- inline ์์๋ค์ ์ธ์๋๋๊ฒ ํธํจ.
<span>
,<a>
,<code>
๋ฑ๋ฑ- inline์ ํน์ง
- ๋์ด์ ๋๋น๊ฐ ๋ฌด์๋จ.
- ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ margin ์, ์๋ margin์ ๊ฐ์ง ์ ์๋ค. ๋ฐ๋ผ์ block์ผ๋ก ๋ฐ๊ฟ์ค์ผํจ.
- padding์ ์ํ์ข์ฐ ์ ์ฉ๊ฐ๋ฅ
๐ block์ inline์ผ๋ก ๋ฐ๊พธ๊ธฐ
display: inline
width, height ๊ฐ ๋ฌด์๋ผ์ ๋ฌด์ธ๊ฐ ์ถ๊ฐํ์ง ์๋ ์ด์ ์๋ฌด๊ฒ๋ ์๋ณด์.
display: inline-block
์์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ผ๋, ๋ฐ์ํ ๋์ง์ธ ์ง์ํ์ง ์์.
๋ํ ์ ํด์ง ํ์์ด ์๊ณ block ์ฌ์ด์ ๋ง์๋๋ก ๊ณต๊ฐ์ด ์๊ธฐ๊ธฐ ๋๋ฌธ์ ์ ์ฌ์ฉํ์ง ์์.
=> ํด๊ฒฐ๋ฐฉ์ flex
display: flex
2์ฐจ์ ๋ ์ด์์์์ ์ ์๋ํ๋ค.
๋งค์ฐ ์ ์ฐ, ์ผ๋ง๋ ๋น ๊ณต๊ฐ์ ์ค์ง ์๋์ผ๋ก ๊ณ์ฐ.
flexbox ์ฌ์ฉ๊ท์น
1) ์์ ์๋ฆฌ๋จผํธ์๋ ์ด๋ค ๊ฒ๋ ์ ์ง ๋ง์์ผ ํจ.
์์ ์๋ฆฌ๋จผํธ๋ฅผ ์์ง์ด๊ฒ ํ๋ ค๋ฉด ๋ถ๋ชจ ์๋ฆฌ๋จผํธ๋ฅผ flex container๋ก ๋ง๋ค์ด์ผ ํ๋ค.
2) justify-content : main axis์์ ์์ฉ (default ์ํ)
3) align-items : cross axis์์ ์์ฉ (default ์์ง)
flex-direction : main axis์ cross axis์ default ๊ฐ์ ๋ฐ๊ฟ ์ ์๋ค. (default row)
flex-wrap : flex-wrap์ flex์ ํ์ ์์๋ค์ด flex๋ฅผ ์ ์ธํ ์์ญ์ ๋ฒ์ด๋ ๊ฒฝ์ฐ, ๊ฐ์ ๋ก ํ ์ค๋ก ๋ฐฐ์นํ ์ง ํ์ ๋๋ ์ ๋ฐฐ์นํ ์ง ๊ฒฐ์ ํ๋ ์์ฑ.
wrap
flex๋ฅผ ์ ์ธํ ์์ญ์ ๋ฒ์ด๋ ๊ฒฝ์ฐ ํ์ ๋๋ ์ ๋ฐฐ์น.
nowrap
์ default๊ฐ์ผ๋ก ๊ฐ์ ๋ก ํ ์ค๋ก ๋ฐฐ์น.flexbox ๊ฐ๋ ์ก๊ธฐ ์ข์ ๊ฒ์ ์ฌ์ดํธ https://flexboxfroggy.com/#ko
๐ Position
fixed
- ์ด๊ธฐ ์์น์ ๊ณ ์ ์์ผ์ค. ์คํฌ๋กคํด๋ ํญ์ ์ ์๋ฆฌ
- top, left, right, bottom ์ค ํ๋๋ผ๋ ์์ ํ์ ๋ ์ด๊ธฐ ์์น๊ฐ ๋ฌด์๋๊ณ ์ง์ ํ ์์น์ ์๋ฆฌ์ก์.
relative
- element๋ฅผ ์กฐ๊ธ ์์ง์ด๊ณ ์ถ์ ๋, ์ฒ์ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ง์ด๋ค.
absolute
- static, relative์ ๋ค๋ฅด๊ฒ ์ผ๋ฐ์ ์ธ ๋ฌธ์ ํ๋ฆ์์ ์ ์ธ
- ๊ฐ์ฅ ๊ฐ๊น์ด relative ๋ถ๋ชจ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ด๋, ์์ผ๋ฉด body๊ฐ ๋ถ๋ชจ
๐ float
- ํน์ ์์๋ฅผ ๋ ์๊ฒ ํ๋๋ก ํ๋ ์์ฑ
- float ์์ฑ์ ์ฌ์ฉํด ๋ฐ์ค๋ฅผ ์ผ์ชฝ ๋๋ ์ค๋ฅธ์ชฝ์ผ๋ก "๋ถ์ " ์ํค๋ ๋ ์ด์์ ๊ธฐ๋ฒ
- (์ฃผ์) float ์์ฑ์ ์ฌ์ฉํ ์์๋
position: absolute
๊ฐ๊ณผ ์๋ฆฝํ ์ ์๋ค.
left
- ์์๋ฅผ ์ผ์ชฝ ๋ฐฉํฅ์ผ๋ก ๋ถ์ ํ๊ฒ ์ค์
right
- ์์๋ฅผ ์ค๋ฅธ์ชฝ ๋ฐฉํฅ์ผ๋ก ๋ถ์ ํ๊ฒ ์ค์
none
- default value, ์์๋ฅผ ๋์ฐ์ง ์๋๋ค
๐ box-sizing
box-sizing: border-box
์ ์ฌ์ฉ ์
CSS์์ 200pxํฌ๊ธฐ์ box์ 50px padding์ ๋ฃ์ ๋,
width: 200px;
padding: 50px;
์์ ๊ฐ์ด ์
๋ ฅํ๋ฉด CSS์์๋ 200px์ box width๋ฅผ ์ ์งํ๋ ค ํ๋ฏ๋ก ์ด ํฌ๊ธฐ 250px (w:200, p:50) ์ box๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
์ด๋ box-sizing: border-box
๋ฅผ ์
๋ ฅํ๊ฒ ๋๋ฉด padding์ ์
๋ ฅํด๋ box์ฌ์ด์ฆ๋ฅผ ์ ๊ฒฝ์ฐ์ง ์๋๋ค๋ ์๋ฏธ๊ฐ ๋์ด
์ฒ์์ ์ํ๋ padding 50, 150 box๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
'์ธ์ด > HTML. CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
TIL07 | HTML Semantic Web & Semantic Tags (0) | 2021.10.06 |
---|