๐Ÿง ์˜ค๋Š˜์€ ์ด์ข…์ฐฌ ๊ฐ•์‚ฌ๋‹˜์˜ CSS ํŠน๊ฐ•์„ ๋“ค์—ˆ๋‹ค.
์•„์ง CSS์— ๋Œ€ํ•ด ์ง€์‹์ด ๋ถ€์กฑํ•œ ๋‚˜์—๊ฒŒ ์ด๋ฒˆ ์‹œ๊ฐ„์€ ๋„ˆ๋ฌด๋‚˜ ์œ ์ตํ•œ ์‹œ๊ฐ„์ด์—ˆ๋‹ค.

CSS ๊ธฐ์ดˆ ํƒ๊ตฌ

1. ๋ ˆ์ด์•„์›ƒ ํŒŒ์•…ํ•˜๊ธฐ
์‹œ๊ฐ์ ์œผ๋กœ ๋ณผ ๋•Œ ๋ช‡ ๊ฐœ์˜ ๋ฉ์–ด๋ฆฌ๋กœ ๋‚˜๋‰˜์–ด ์žˆ๋Š”์ง€ ํŒŒ์•…ํ•˜๊ณ  ๋“ค์–ด๊ฐ€๊ธฐ

2. ๊ฐ€์žฅ ํฐ ๋ฉ์–ด๋ฆฌ -> div ๋ถ€ํ„ฐ ๋งŒ๋“œ๋Š”๊ฑธ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ
์‹œ๊ฐ์ ์˜ ๊ธฐ๋ณธ div

3. div -> css๋กœ ๊พธ๋ฏธ๊ธฐ
<!-- body ์š”์†Œ์™€ div ์š”์†Œ๋Š” ๋ถ€๋ชจ์™€ ์ž์‹๊ฐ„์˜ ๊ด€๊ณ„ -->
<body>
	<div>
  	</div>
</body>
/* ์„ ํƒ์ž / ์…€๋ ‰ํ„ฐ๋ผ๊ณ  ๋ถ€๋ฆ„ / type selector */
div {
/* ์†์„ฑ property : value ์†์„ฑ๊ฐ’*/
	background-color: orange;
}

initial value (์ดˆ๊ธฐ๊ฐ’)

โš ๏ธ ๋ชจ๋“  ํ”„๋กœํผํ‹ฐ์—๋Š” initial value๊ฐ€ ์กด์žฌํ•˜๋ฉฐ ์„œ๋กœ ๋‹ค๋ฅด๋‹ค.

div {} ํฌ๊ธฐ์— ๋Œ€ํ•œ property๋ฅผ ์ง€์ •ํ•œ ์ ์ด ์—†๋Š”๋ฐ ๊ธฐ๋ณธ์  width, height๊ฐ€ ์–ด๋–ป๊ฒŒ ์„ธํŒ…์ด ๋˜์–ด ์žˆ๋Š”์ง€??

๐Ÿ‘‰ width: auto;
	width: initial;
width์˜ ์ดˆ๊ธฐ๊ฐ’์€ auto์—ฌ์„œ ์ตœ๋Œ€ ๋„ˆ๋น„๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.
width: initial;๋กœ๋„ ๋ช…์‹œ ๊ฐ€๋Šฅ
๋ถ€๋ชจ ์š”์†Œ๋กœ๋ถ€ํ„ฐ ์ฃผ์–ด์ง„ ๊ฐ€๋Šฅํ•œ ์ตœ๋Œ€ ๋„ˆ๋น„

๐Ÿ‘‰ height: auto;
	height: initial;
height์˜ ์ดˆ๊ธฐ๊ฐ’ ๋˜ํ•œ auto๋กœ div์˜ ์ปจํ…์ธ  ์–‘๋งŒํผ ์žกํžŒ๋‹ค.
์ž์‹ (์ž์‹ )์ด ๊ฐ€์ง€๋Š” ์ฝ˜ํ…์ธ  ๋†’์ด๋งŒํผ ์œ ์—ฐํ•˜๊ฒŒ ๊ฐ€์ง
๐Ÿ” auto์˜ ์˜๋ฏธ -> ๋ถ€๋ชจ ์š”์†Œ๋กœ๋ถ€ํ„ฐ ์ฃผ์–ด์ง„ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋„ˆ๋น„๋งŒํผ ๊ฐ€๋“์ฐฌ๋‹ค.
๐Ÿ‘‰ ๋ณด์—ฌ์ฃผ๋Š” ํ™”๋ฉด ์ž์ฒด์— ์งค๋ฆฌ์ง€ ์•Š์œผ๋ฉฐ ์˜ค๋ฅธ์ชฝ์— ์—ฌ๋ฐฑ ์ƒ๊น€

๐Ÿ” 100%์˜ ์˜๋ฏธ -> ๊ฝˆ ์ฐจ์ง€๋งŒ width์— margin-left๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์‚์ ธ ๋‚˜๊ฐ (์Šคํฌ๋กค ๋ฐœ์ƒ)
๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ณ„์‚ฐํ•œ ์ฆ‰, margin, border, padding ๋“ฑ์„ ๊ณ ๋ คํ•˜์—ฌ ์œ ์—ฐํ•˜๊ฒŒ ๋ถ€๋ชจ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ตœ๋Œ€ ์ฝ˜ํ…์ธ  ์˜์—ญ ๋„ˆ๋น„๋งŒํผ ๊ฐ€๋“์ฐฌ๋‹ค.
โ“ div๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์™ผ์ชฝ ์ •๋ ฌ๋กœ ๋‚˜์˜ค๋Š” ์ด์œ 
๐Ÿ‘‰ ๋ฌธํ™”๊ถŒ์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅด๋‹ค.

โ“ div ํ•˜๋‚˜ ๋” ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒฝ์šฐ ์˜†์ด ์•„๋‹Œ ๋ฐ‘์œผ๋กœ ์ถ”๊ฐ€๋˜๋Š” ์ด์œ 
๐Ÿ‘‰ block level element๋Š” ํ•œ ์ค„์„ ๋‹ค ์ฐจ์ง€ํ•œ๋‹ค. (๋ถ€๋ชจ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์ฝ˜ํ…์ธ  ์˜์—ญ ๋งŒํผ)
๋‚จ์€ ๊ณต๊ฐ„ : ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„ --> ๋‹ค์Œ div๋Š” ํ•ด๋‹น ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•œ๋‹ค.

padding, border, margin

padding -> ์ปจํ…์ธ  ๋ฐ”๊นฅ์„ ๋‘˜๋Ÿฌ์‹ธ๋Š” ์˜์—ญ
margin -> ๋ฐ”๊นฅ ์˜์—ญ

margin-left: auto;

block level element๊ฐ€ ๋‚จ์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์„ ์—ฌ๋ฐฑ์œผ๋กœ ๋ชจ๋‘ ๋‹ค ์ทจํ•จ -> box๊ฐ€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๊ฐ€๋ฒ„๋ฆผ

margin: auto;

์ƒํ•˜์ขŒ์šฐ ๋ชจ๋‘ auto ๊ฐ’์œผ๋กœ -> ๊ฐ€์šด๋ฐ ์ •๋ ฌ
margin: 0 auto; -> ์ƒํ•˜ 0, ์ขŒ์šฐ auto
margin: auto auto; -> block level element์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ‘ ๊ณต๊ฐ„์€ ๋‹ค๋ฅธ div์˜ ๊ณต๊ฐ„์œผ๋กœ ์ƒํ•˜ ๋˜ํ•œ -> 0

์ƒ๊ฐํ•˜๊ธฐ

HTML์„ ํ•œ๋ฒˆ์— ๋‹ค ์ ์œผ๋ ค๊ณ  ํ•˜์ง€ ๋ง๊ธฐ!! -> ์ตœ์†Œํ•œ์œผ๋กœ ์ž‘์„ฑ
์ตœ์†Œํ•œ์œผ๋กœ ์ž‘์„ฑ -> ๋ ˆ์ด์•„์›ƒ -> ์ถ”๊ฐ€์ ์ธ ์ž‘์„ฑ 
์„œ๋‘๋ฅด์ง€ ๋ง์ž!!

์ž‘์„ฑํ•˜๊ธฐ

Header (์ƒ๋‹จ)
Contents (์ค‘๊ฐ„)
Footer (ํ•˜๋‹จ)		-> ์„œ๋กœ ๊ตฌ๋ถ„์‹œํ‚ค๊ธฐ ์œ„ํ•ด ํŒŒ์•…ํ•˜๊ธฐ ์ข‹์€ ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•˜๊ธฐ

์‚ฌ์šฉ์ž ์Šคํƒ€์ผ ๋ฆฌ์…‹

๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ ์Šคํƒ€์ผ ์‹œํŠธ๊ฐ€ ์ œ๊ณต๋˜์–ด ์žˆ๋‹ค.
initial value์™€๋Š” ๋‹ค๋ฅด๋ฉฐ ๋ธŒ๋ผ์šฐ์ €์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฐ’์ด ์ œ๊ณต๋˜์–ด ์žˆ๋‹ค.
โš ๏ธ ์šฐ๋ฆฌ๊ฐ€ ์˜๋„ํ•œ ๋””์ž์ธ์ด ์•„๋‹ˆ๋ฉฐ ์‚ฌ์šฉ์ž์˜ ๋ธŒ๋ผ์šฐ์ €์— ๋”ฐ๋ผ ์›น ํŽ˜์ด์ง€๊ฐ€ ๋‹ค๋ฅด๊ฒŒ ๋ณด์ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ดˆ๊ธฐํ™” ์‹œ์ผœ์ฃผ๊ธฐ
โš ๏ธ ๋ณดํ†ต css ์ฒซ ์ค„์— ์ž‘์„ฑ
h1 , p {
	margin: initial;
    padding: 0;
}

block level element vs inline element

margin: auto; -> ๋ธ”๋ก ๋ ˆ๋ฒจ ์š”์†Œ๋กœ ๋ธ”๋ก์ด ๊ฐ€์šด๋ฐ ์ •๋ ฌ (h1, p ํฌํ•จ)
text-align: center; -> ์ธ๋ผ์ธ ์š”์†Œ๋กœ ํ…์ŠคํŠธ ๊ฐ€์šด๋ฐ ์ •๋ ฌ

๊ฐ€์šด๋ฐ ์ •๋ ฌ์˜ 2๊ฐ€์ง€ ๋ฐฉ๋ฒ•

๐Ÿ‘‰ ๋ธ”๋ก ๋ ˆ๋ฒจ ์š”์†Œ -> 
ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์‚ฌ์šฉ (width๋กœ ๋„ˆ๋น„ ์กฐ์ •ํ•ด๋„ ์˜ค๋ฅธ์ชฝ์—” ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต๊ฐ„์œผ๋กœ ์ฐจ ์žˆ์Œ)
div, ul, li, h1-h6, p ๋“ฑ
์•ˆ์— ์กด์žฌํ•˜๋Š” text๋“ค์€ inline ์š”์†Œ (inline์„ block๋กœ ๊ฐ์‹ธ๊ณ  ์žˆ๋Š” ๊ฒƒ)
    
๐Ÿ‘‰ ์ธ๋ผ์ธ ์š”์†Œ ->
text, image, a, span ๋“ฑ
๋ธ”๋ก์œผ๋กœ ๊ฐ€์šด๋ฐ ์ •๋ ฌ? -> width๋กœ ๋„ˆ๋น„ ์กฐ์ • -> margin: 0 auto;
text ๊ฐ€์šด๋ฐ ์ •๋ ฌ? -> text-align: center;
    
๐Ÿ‘‰ ์ด๋ฏธ์ง€ ๊ฐ€์šด๋ฐ ์ •๋ ฌ? -> inline ์š”์†Œ -> text-align: center;
โš ๏ธ ์ƒ์œ„ ์š”์†Œ์— text-align: center; ๋ถ€์—ฌ
๋ธ”๋ก ๋ ˆ๋ฒจ์— text-align: center;๋ฅผ ๋ถ€์—ฌํ•˜๋ฉด ํ•˜์œ„ ๋ชจ๋“  ์• ๋“ค์ด ๋ฐ˜์‘ํ•œ๋‹ค.

๐Ÿ‘‰ ์ƒ์† inheritance

์ƒ์† inheritance

์ƒ์†์ด ์•ˆ๋˜๋Š” ํ”„๋กœํผํ‹ฐ๋“ค๋„ ์กด์žฌ
์ฃผ๋กœ ํ…์ŠคํŠธ ๊ด€๋ จ font size, color ๋“ฑ์€ ์ƒ์†์ด ๋จ

๋ถ€๋ชจ์—์„œ font-size: 40px; ํ•œ ๊ฒฝ์šฐ
h1์—์„œ ์ด ์‚ฌ์ด์ฆˆ๋ฅผ ์ ์šฉ์‹œํ‚ค๊ณ  ์‹ถ์œผ๋ฉด h1์˜ font-size: inherit;

background ์ด๋ฏธ์ง€ ์งค๋ฆฌ๋Š” ๊ฒฝ์šฐ

background-size: cover;

.header > img

์ง๊ณ„ ์ž์‹
'>' ๊ฐ™์€ ์œ„์น˜์— ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค์„ combinator ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

์ƒ๊ฐํ•˜๊ธฐ

HTML์—์„œ ์‹œ๊ฐ์ ์œผ๋กœ ์›€์ง์ด์ง€ ๋ง์ž!!!
css๋กœ ํ•ด๊ฒฐํ•˜๊ธฐ
ํด๋ž˜์Šค๋กœ ๊ณตํ†ต ๋ถ€๋ถ„ ์ž‘์„ฑํ•˜๊ณ  ํ•˜์œ„ ํด๋ž˜์Šค๋กœ ๊ฐ๊ฐ ์„ธ๋ถ€๋‚ด์šฉ ๋‹ค๋ฃจ๊ธฐ

inline element -> a

width, height ๊ฐœ๋…์ด ์กด์žฌํ•˜์ง€ ์•Š์Œ (line-height๋Š” ์กด์žฌ)
-> margin ์ค„๋•Œ ์ขŒ์šฐ๋กœ๋งŒ ์ ์šฉ๋จ
baseline!!!!

CSS ์ž‘์„ฑ๋˜๋Š” ์ˆœ์„œ๊ฐ€ ์ค‘์š”??

์ค‘์š”ํ•˜๊ธด ํ•˜์ง€๋งŒ selector์˜ ๊ตฌ์ฒด์ ์ธ ์ •๋„๊ฐ€ ๋” ์ค‘์š”ํ•˜๋‹ค.
๊ฐ™์€ ํด๋ž˜์Šค ์ด๋ฆ„ ์—ฌ๋Ÿฌ๋ฒˆ ์‚ฌ์šฉ -> ๋” ๊ตฌ์ฒด์ 
๋™์  -> ์ˆœ์„œ๊ฐ€ ์ค‘์š”ํ•˜๋‹ค (๋‚˜์ค‘์— ์“ฐ์ธ๊ฒƒ์ด ์„ ํƒ)

์ด๋ฏธ์ง€

์ˆ˜์—… ์‹œ๊ฐ„์— ๋งŒ๋“  ํ™”๋ฉด
๋‚˜์ค‘์— ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ถ”๊ฐ€ํ•ด ๋ด์•ผ๊ฒ ๋‹ค. ๐Ÿ˜๐Ÿ˜

๋Š๋‚€์ 

์ƒ๊ฐ๋ณด๋‹ค css ๊ธฐ๋ณธ์ ์ธ ๋ถ€๋ถ„์—์„œ ๊ณ ๋ คํ•ด๋ณด์ง€ ๋ชปํ•œ ๋ถ€๋ถ„๋“ค์„ ์˜ค๋Š˜ ์ƒ๊ฐํ•ด๋ณด๊ฒŒ ๋˜์—ˆ๋‹ค.
์•ž์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ• ๋•Œ ์˜ค๋Š˜ ๋ฐฐ์šด ๋ถ€๋ถ„๋“ค์„ ๊ณ ๋ คํ•˜๋ฉด์„œ ์ž‘์„ฑํ•ด์•ผ๊ฒ ๋‹ค. ๐Ÿ˜

profile
ํ•จ๊ป˜ ๋ฐฐ์›Œ๋‚˜๊ฐ€๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค!

1๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2022๋…„ 9์›” 3์ผ

์™€์•„์•„ ์œ ์ง„๋‹˜ ์ •๋ง ๊ผผ๊ผผํ•˜๊ฒŒ TIL์„ ์ž‘์„ฑํ•˜์…จ๊ตฐ๋‡จ.. ์ €๋„ ํŠน๊ฐ• ๋“ฃ๊ณ  ์ „ํ˜€ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๋ถ€๋ถ„์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์„œ ๋„ˆ๋ฌด์ข‹์•˜์–ด์š”!!! ์œ ์ง„๋‹˜์˜ ๋ฒจ๋กœ๊ทธ์— ๊ฐํƒ„ํ•˜๊ตฌ ๊ฐ‘๋‹ˆ๋‹ท...! ๐Ÿ‘๐Ÿ‘

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ