2022. 3. 13. 23:39ใFront-End ์์ ์ค/๊ธฐํ ์ฐธ๊ณ ์๋ฃ
๐ CSS ๊ธฐ๋ณธ ์ ๋ฆฌ
๐ฝ Tag ์์ฑ ID, Class
๋จผ์ 319 ๋ฒ์งธ ์ค์ ์์๋ณด์๋ฉด ์์ div tag์ id๊ฐ์ผ๋ก contentWrap์ ์ค ๊ฒ์ด์์. Tag์ id๋ก ์ด๋ฆ์ ์ฃผ์๋ค๋ฉด `#`์ ์์ ๋ถ์ฌ ์ฌ์ฉํ๊ณ , ์์น์ ์ผ๋ก ํ๋์ ๊ฐ์ฒด์๋ง ์ ์ฉํ ์ ์๋ ๊ฒ์ด์์.
#์์ด๋{ ์์ฑ1:์์ฑ๊ฐ; ์์ฑ2:์์ฑ๊ฐ; }
์ฐธ๊ณ ์๋ฃ : https://ofcourse.kr/css-course/id-class-%EC%84%A0%ED%83%9D%EC%9E%90
๋ง์ฝ id๊ฐ ์๋ class๋ก ์ด๋ฆ์ ์ฃผ์๋ค๋ฉด ์์ `#`์ด ์๋ `.`์ ๋ถ์ฌ ์ฌ์ฉํ๋ฉฐ, ์ฌ๋ฌ ๊ฐ์ฒด์ ์ฌ์ฉ์ ํ ์ ์๋ ๊ฒ์ด์์.
.ํด๋์ค๋ช
{ ์์ฑ1:์์ฑ๊ฐ; ์์ฑ2:์์ฑ๊ฐ }
์ฐธ๊ณ ์๋ฃ : https://ofcourse.kr/css-course/id-class-%EC%84%A0%ED%83%9D%EC%9E%90
๐ฝ Position
320๋ฒ์งธ ์ค position์ Tag๋ฅผ ์ด๋์ ์์น ์ํฌ์ง ์ ํ๋ฉฐ ์๋ 5๊ฐ์ง ๊ฐ์ ๊ฐ๋ ๊ฒ์ด์์.
์ฐธ๊ณ ์๋ฃ : https://ofcourse.kr/css-course/position-%EC%86%8D%EC%84%B1
- static: ๊ธฐ๋ณธ๊ฐ, ๋ค๋ฅธ ํ๊ทธ์์ ๊ด๊ณ์ ์ํด ์๋์ผ๋ก ๋ฐฐ์น๋๋ฉฐ, ์์น๋ฅผ ์์๋ก ์ค์ ํ ์ ์๋ค.
- absolute: ์ ๋ ์ขํ์ ํจ๊ป ์์น ์ง์ ๊ฐ๋ฅ
- relative: ์๋ ์๋ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ์ขํ ์ง์
- fixed: ์คํฌ๋กค๊ณผ ์๊ด์์ด ํญ์ ๋ฌธ์ ์ต ์ข์ธก ์๋จ์ ๊ธฐ์ค์ผ๋ก ์ขํ ๊ณ ์
- inherit: ๋ถ๋ชจ ํ๊ทธ์ ์์ฑ๊ฐ ์์
์ขํ๋ฅผ ์ง์ ํด ์ฃผ๊ธฐ ์ํด์ `left`, 'right`, `top`, `bottom` ์์ฑ๊ณผ ํจ๊ป ์ฌ์ฉํ๋ ๊ฒ์ด์์.
์ฐธ! `position`์ `abloute`๋, `fixed`๋ก ์ค์ ์ ๊ฐ๋ก ํฌ๊ธฐ๊ฐ 100%๊ฐ ๋๋ `block` ํ๊ทธ์ ํน์ง์ ์ฌ๋ผ์ง๋ ๊ฒ์ด์์.
๐ฝ display
321๋ฒ์งธ ์ค display๋ ์์๋ฅผ ์ด๋ป๊ฒ ๋ณด์ฌ์ค์ง ๊ฒฐ์ ํ ๋ ์ฌ์ฉํ๋ ๊ฒ์ด์์.
์ฃผ๋ก 4๊ฐ์ง ์์ฑ๊ฐ์ด ์ฐ์ด๋๋ฐ, ํ๊ทธ๋ง๋ค ๊ธฐ๋ณธ๊ฐ์ด ๋ค๋ฅธ ๊ฒ์ด์์.
- none : ๋ณด์ด์ง ์์
- block: Bolck Box
- inline: Inline Box
- inline-block: block๊ณผ inline์ ์ค๊ฐ ํํ
์ฃผ๋ํ๋์ block์ ์ฌ์ฉํ๋๋ฐ, div, p, h(#), li ํ๊ทธ ๋ฑ์ด ์ด์ ํด๋น ํ๋ ๊ฒ์ด์์.
์ด ์น๊ตฌ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ๋ก ์์ญ์ ๋ชจ๋ ์ฑ์ฐ๋ฉฐ, block ์์ ๋ค์์ ๋ฑ์ฅํ๋ ํ๊ทธ๋ ์ค๋ฐ๊ฟ์ด ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๊ฒ ํด ์ฃผ๋ ๊ฒ์ด์์. ์ด๋ Work ๊ฐ์ ๋ฌธ์์์ ๋ฌธ๋จ์ ํ์ํ ๋, ํ ๋ฌธ๋จ์ด ๋๋ ๋ค์ ๋ํ๋๋ ์์๋ ํญ์ ๋ค์ ์ค์ ํ์๋๋ ๊ฒ๊ณผ ๊ฐ์ ๊ฒ์ด์์.
<style>
.block1{ width: 300px; border: 3px solid #333 }
.block2{ width: 200px; border: 3px solid #999 }
</style>
<div class="block1">1</div>
<div class="block2">2</div>
helloโ
์ถ๋ ฅ ๊ฒฐ๊ณผ
๐ฝ width, height
322 ~ 323๋ฒ์งธ ์ค width์ height๋ ๊ฐ๊ฐ ๊ฐ๋ก ๊ธธ์ด, ์ธ๋ก ๊ธธ์ด๋ฅผ ์๋ฏธํ๋ ๊ฒ์ด์์.
๊ฐ์ ์ ์ํ ๋ "100px" ์ฒ๋ผ ์ซ์ ๋ค์ ๋จ์๋ฅผ ํ์ํ์ฌ ์ ๋ ๊ฒ์ด์์.
(์ฃผ๋ํ๋ ์ฒ๋ผ px(ํฝ์
)์ด ์๋, '100%' ์ฒ๋ผ % ๋จ์๋ก ์ค์ ๊ฐ๋ฅ)
์ด ์น๊ตฌ๋ `<span>` ๋ฑ inline ์์๋ ์ ์ฉ๋์ง ์๋๋ฐ, ์ด๋ display ์์ฑ์ ์ฐธ๊ณ ํ๋ฉด ์ข์ ๊ฒ์ด์์.
324๋ฒ์งธ ์ค min-height๋ ์์์ ์ต์ ๋์ด๋ฅผ ์ค์ ํ๋ ๊ฒ์ด์์. ์ด ์น๊ตฌ๋ height ์์ฑ์ ์ฌ์ฉ๊ฐ์ด ์์ ์ ๊ฐ๋ณด๋ค ์์์ง๋ ๊ฒ์ ๋ง์ ์ค๋ต๋๋ค!
์ฐธ๊ณ ์๋ฃ : https://developer.mozilla.org/ko/docs/Web/CSS/min-height
min-height๊ฐ max-height ๋๋ height๋ณด๋ค ์ปค์ง๋ฉด ์์์ ๋์ด๋ min-height ๊ฐ์ ์ฌ์ฉํ๊ฒ ๋๋ ๊ฒ์ด์์.
๐ฝ Overflow
325๋ฒ์งธ ์ค overflow๋ ๋จ์ถ ์์ฑ์ด๊ณ , ์์์ Contents๊ฐ ๋๋ฌด ์ปค์ ์์์ ๋ธ๋ก ์์ ๋งฅ๋ฝ์ ๋ง์ถ ์ ์์ ๋ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์ ์ํ๋ ๊ฒ์ด์์. overflow-x, overflow-y์ ๊ฐ์ ์ค์ ํ ์ ์๋ต๋๋ค!
์ฐธ๊ณ ์๋ฃ : https://developer.mozilla.org/ko/docs/Web/CSS/overflow
- visible: contents ์์๊ฐ ์ง์ ํ ํฌ๊ธฐ ๋ณด๋ค ํด ๋, ๋์น contents๋ฅผ ๊ทธ๋๋ก ๋
ธ์ถ
์ฝํ ์ธ ๋ฅผ ์๋ฅด์ง ์์ผ๋ฉฐ ์์ชฝ ์ฌ๋ฐฑ ์์ ๋ฐ์๋ ๊ทธ๋ฆด ์ ์์ต๋๋ค. - hidden: ๋์น contents๋ฅผ ๋ณด์ด์ง ์๊ฒ ์จ๊ฒจ ๋ฒ๋ฆผ
์ฝํ ์ธ ๋ฅผ ์์ชฝ ์ฌ๋ฐฑ ์์์ ๋ง์ถ๊ธฐ ์ํด ์๋ผ๋ ๋๋ค. ์คํฌ๋กค๋ฐ๋ฅผ ์ ๊ณตํ์ง ์๊ณ , ์คํฌ๋กคํ ๋ฐฉ๋ฒ(๋๋๊ทธ, ๋ง์ฐ์ค ํ ๋ฑ)๋ ์ง์ํ์ง ์์ต๋๋ค. ์ฝ๋๋ฅผ ์ฌ์ฉํด ์คํฌ๋กคํ ์๋ ์์ผ๋ฏ๋ก (offsetLeft (en-US) ์์ฑ ์ค์ ๋ฑ), ์ด ์ํ์ ์์๋ ์คํฌ๋กค ์ปจํ ์ด๋์ ๋๋ค. - clip: hidden๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ์ฝํ ์ธ ๋ฅผ ์์ชฝ ์ฌ๋ฐฑ ์์์ ๋ง์ถฐ ์๋ฆ ๋๋ค. ๊ทธ๋ฌ๋ clip์ ์ฝ๋๋ฅผ ์ฌ์ฉํ ์คํฌ๋กค๋ง๋ ๋ฐฉ์งํ๋ฏ๋ก ์ด๋ ํ ์คํฌ๋กค๋ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์ด ์ํ์ ์์๋ ์คํฌ๋กค ์ปจํ ์ด๋๊ฐ ์๋๋ฉฐ, ์๋ก์ด ๋ธ๋ก ์์ ๋ฌธ๋งฅ๋ ์์ฑํ์ง ์์ต๋๋ค. ์์ ๋ฌธ๋งฅ์ด ํ์ํ๋ค๋ฉด display:flow-root์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- scroll: scroll์ ๋ง๋ค์ด ์ฃผ์ด ๋์น contents๋ฅผ ํ์ธํ ์ ์๊ฒ ๋ง๋ค์ด ์ค
์ฝํ ์ธ ๋ฅผ ์์ชฝ ์ฌ๋ฐฑ ์์์ ๋ง์ถ๊ธฐ ์ํด ์๋ผ๋ ๋๋ค. ๋ธ๋ผ์ฐ์ ๋ ์ฝํ ์ธ ๋ฅผ ์ค์ ๋ก ์๋ผ๋๋์ง ์ฌ๋ถ๋ฅผ ๋ฐ์ง์ง ์๊ณ ํญ์ ์คํฌ๋กค๋ฐ๋ฅผ ๋ ธ์ถํ๋ฏ๋ก ๋ด์ฉ์ ๋ณํ์ ๋ฐ๋ผ ์คํฌ๋กค๋ฐ๊ฐ ์๊ธฐ๊ฑฐ๋ ์ฌ๋ผ์ง์ง ์์ต๋๋ค. ํ๋ฆฐํฐ๋ ์ฌ์ ํ ๋์น ์ฝํ ์ธ ๋ฅผ ์ถ๋ ฅํ ์๋ ์์ต๋๋ค. - auto: ์๋์ผ๋ก ์ค์
์ฌ์ฉ์ ์์ด์ ํธ๊ฐ ๊ฒฐ์ ํฉ๋๋ค. ์ฝํ ์ธ ๊ฐ ์์ชฝ ์ฌ๋ฐฑ ์์์ ๋ค์ด๊ฐ๋ค๋ฉด visible๊ณผ ๋์ผํ๊ฒ ๋ณด์ด๋, ์๋ก์ด ๋ธ๋ก ์์ ๋ฌธ๋งฅ์ ์์ฑํฉ๋๋ค. ๋ฐ์คํฌํฑ ๋ธ๋ผ์ฐ์ ์ ๊ฒฝ์ฐ ์ฝํ ์ธ ๊ฐ ๋์น ๋ ์คํฌ๋กค๋ฐ๋ฅผ ๋ ธ์ถํฉ๋๋ค.
์์ ์์ฑํ ๊ฒ์ฒ๋ผ ์ ์ฉ ๊ฐ๋ฅํ ๋ฐฉ๋ฒ์ ์๋ผ๋ด๊ธฐ, ์คํฌ๋กค๋ฐ ๋ ธ์ถ, ๋์น ์ปจํ ์ธ ๊ทธ๋๋ก ๋ ธ์ถ ๋ฑ์ด ์๋ ๊ฒ์ด์์.
visible(๊ธฐ๋ณธ๊ฐ)์ด ์๋ ๋ค๋ฅธ ๊ฐ์ผ๋ก Overflow ์์ฑ์ ์ฌ์ฉํ ๊ฒฝ์ฐ ์๋ก์ด ๋ธ๋ก ์์ ๋ฌธ๋งฅ์ ์์ฑํ๋ ๊ฒ์ด์์. ์ด๋ ๊ธฐ์ ์ ์ธ ์๊ตฌ์ฌํญ์ผ๋ก ๋ง์ฝ ์คํฌ๋กค ํ๋ ์์์ float๊ฐ ๊ต์ฐจํ๋ค๋ฉด ๊ฐ ์คํฌ๋กค ๋จ๊ณ๋ง๋ค ๋ด์ฉ๋ฌผ์ ๊ฐ์ ์ ์ผ๋ก ๋ค์ ๊ฐ์ธ๊ฒ ๋ ๊ฒ์ด์์. ์ด๋ฌ๋ฉด ๊ฒฐ๊ตญ ์คํฌ๋กค ์๋๋ฅผ ๋๋ฆฌ๊ฒ ๋ง๋ค ๊ฒ์ด๋๋๋ค.
์ด ์น๊ตฌ์ ํจ๋ ฅ์ ๊ฐ๊ธฐ ์ํด์๋ ๋ธ๋ก ๋ ๋ฒจ ์ปจํ ์ด๋์ ๋์ด(height ํน์ Max-height)๋ฅผ ์ค์ ํ๊ฑฐ๋, white-space๋ฅผ nowrap์ผ๋ก ์ค์ ํด์ผ ํ๋ ๊ฒ์ด์์.
์ด ์น๊ตฌ๋ ์์ฑ์ ํ๋ ๋๋ ๋ ๊ฐ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ ๊ฒ์ด์์. ๋ ๊ฐ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ ์ฒซ ๋ฒ์งธ ๊ฐ์ `overflow-x`๊ฐ ๋๊ณ , ๋๋ฒ์งธ ๊ฐ์ `overflow-y`๊ฐ ๋๋ ๊ฒ์ด์์. ํ๋๋ง ์ฌ์ฉํ๋ค๋ฉด ์ง์ ํ ๊ฐ์ ์ ์ถ ๋ชจ๋ ์ ์ฉ ๋๋ต๋๋ค!
๐ฝ margin
margin์ Box Modle์ ์์์ ์์ ์ฌ์ด์ ์ฌ๋ฐฑ์ ์ค์ ํ๋ ์น๊ตฌ์ธ ๊ฒ์ด์์.
์ด ์น๊ตฌ๋ฅผ ์ดํด ํ๊ธฐ ์ ๋ธ๋ก ์์์ ์ธ๋ผ์ธ ์์๋ฅผ ์ดํดํด์ผ ํ๋ ๊ฒ์ด์์.
๋ง์ง ์์ฑ์ ํ
๋๋ฆฌ(border)์ ์ด์ํ๋ ์์ ์ฌ์ด์ ๊ฐ๊ฒฉ์ธ ๋ง์ง ์์ญ์ ํฌ๊ธฐ๋ฅผ ์ค์ ํ๋ ๊ฒ์ด์์.
์ด๋ฌํ ๋ง์ง ์์ญ์ ํจ๋ฉ ์์ญ๊ณผ๋ ๋ฌ๋ฆฌ `background-color` ์์ฑ์ผ๋ก ์ค์ ํ๋ ๋ฐฐ๊ฒฝ์์ ์ํฅ์ ๋ฐ์ง ์๋ ๊ฒ์ด์์. CSS๋ฅผ ์ฌ์ฉํ๋ฉด ๋ง์ง ์์ญ์ ํฌ๊ธฐ๋ฅผ ๋ฐฉํฅ๋ณ๋ก ๋ฐ๋ก ์ค์ ํ ์ ์๋ต๋๋ค!
๋ง์ง(margin) ์์ฑ
CSS์์๋ HTML ์์์ ๋ง์ง ์์ญ์ ์ค์ ํ๊ธฐ ์ํด ์๋์ ๊ฐ์ด ์์ฑ์ ์ ๊ณตํ๋ ๊ฒ์ด์์.
- margin-top
- margin-right
- margin-bottom
- margin-left
๋ง์ง ์์ฑ๊ฐ์ ์์๋ก ์ค์ ํ์ฌ ํด๋น ์์๋ฅผ ๋ค๋ฅธ ์์์ ์์ ๊ฒน์น ์๋ ์๋ ๊ฒ์ด์์.
์์ ์ฝ๋
<style>
div.mar {
margin-top: -25px;
margin-right: 10px;
margin-bottom: 30px;
margin-left: 100px;
}
</style>
๋ง์ง ์์ฑ๊ฐ์ inheit๋ก ์ค์ ํ๋ฉด ๋ถ๋ชจ(parent) ์์์ margin ์์ฑ๊ฐ์ ๊ทธ๋๋ก ๋ฌผ๋ ค ๋ฐ๋ ๊ฒ์ด์์.
์์ ์ฝ๋
<style>
div.parent { height: 100px; margin-left: 100px; }
div.child { background-color: #FFF8DC; margin-left: inherit; }
</style>
'Front-End ์์ ์ค > ๊ธฐํ ์ฐธ๊ณ ์๋ฃ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[FrontEnd] html Tag ์ ๋ฆฌ (0) | 2022.03.14 |
---|---|
[CSS] background, background-size (0) | 2022.03.14 |
[CSS] Color ์์ฑ (0) | 2022.03.13 |
[๋์ ๊ธฐ์ !] CORS(๊ต์ฐจ ์ถ์ฒ ์์ ๊ณต์ ) ์ค์ (0) | 2021.08.22 |
[๋์ ๊ธฐ์ !] ์ ๊ทผ ๊ถํ ์ฒ๋ฆฌ (0) | 2021.08.21 |