🎨 [UIUX] 1202 CSS Coding, μ½”λ”© 기초 4

You_Jin.Β·2024λ…„ 12μ›” 2일
post-thumbnail

✏️ 2024. 12μ›” 02일 / CSS μ–Έμ–΄, μ½”λ”© 기초 4

☁️ 이전 ν•™μŠ΅ ν™œμš© μ‹€μŠ΅

πŸ“ CSS μ–Έμ–΄ 기초 - display 속성
βœ–οΈ
μ˜€λŠ˜μ€ λ°•μŠ€λ₯Ό λ°°μΉ˜ν•˜κ±°λ‚˜ 고유의 속성을 λ°”κΏ” μ‚¬μš©ν•  수 μžˆλ„λ‘ ν•΄μ£ΌλŠ” 속성에 λŒ€ν•΄ μ•Œμ•„λ³΄λ € ν•©λ‹ˆλ‹€.
⭐ display : λ°•μŠ€λ₯Ό λ°°μΉ˜ν•˜κ±°λ‚˜ 고유의 속성을 λ°”κΏ”μ£ΌλŠ” 속성
displayλŠ” '보여주닀'λΌλŠ” 의미둜 블둝 μš”μ†Œμ™€ 인라인 μš”μ†Œμ˜ νŠΉμ§•μ„ λ°”κΏ€ λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.
πŸ”₯ - display : block; ⭐
ν•΄λ‹Ή μš”μ†Œλ₯Ό block μ†μ„±μœΌλ‘œ λ°”κΎΈκ±°λ‚˜ none으둜 숨긴 μš”μ†Œλ₯Ό λ‹€μ‹œ λ‚˜νƒ€λ‚Ό λ•Œμ—λ„ μ‚¬μš©ν•©λ‹ˆλ‹€.
πŸ”₯ - display : inline;
ν•΄λ‹Ή μš”μ†Œλ₯Ό inline μ†μ„±μœΌλ‘œ λ°”κΏ‰λ‹ˆλ‹€.
πŸ”₯ - display : inline-block;
ν•΄λ‹Ή μš”μ†Œλ₯Ό inline-block μ†μ„±μœΌλ‘œ λ°”κΏ‰λ‹ˆλ‹€.
πŸ”₯ - displat : none; ⭐
ν•΄λ‹Ή μš”μ†Œλ₯Ό ν™”λ©΄μ—μ„œ μ˜μ—­κΉŒμ§€ λͺ¨λ‘ μˆ¨κΉλ‹ˆλ‹€.


πŸ“ CSS μ–Έμ–΄ 기초 - visibillity 속성
βœ–οΈ
⭐ visibillity : μ˜μ—­μ€ 남겨둔 채 μš”μ†Œλ§Œ μˆ¨κΈ°λŠ” 속성
display : none을 μ‚¬μš©ν•˜λ©΄ ν•΄λ‹Ή μš”μ†Œκ°€ μ°¨μ§€ν•˜κ³  있던 곡간과 ν•΄λ‹Ή μš”μ†Œλ₯Ό λͺ¨λ‘ μˆ¨κ²¨μ€λ‹ˆλ‹€.
ν•˜μ§€λ§Œ μ˜μ—­μ€ 남겨둔채 μš”μ†Œμ˜ λͺ¨μ–‘λ§Œ 숨기고 μ‹Άλ‹€λ©΄ visibillityλ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
πŸ”₯ - visibillity : hidden; ⭐
μš”μ†Œκ°€ μ°¨μ§€ν•˜κ³  있던 곡간은 κ·ΈλŒ€λ‘œ λ‘” 채 μš”μ†Œλ§Œ μˆ¨κΉλ‹ˆλ‹€.
πŸ”₯ - visibillity : visible;
κΈ°λ³Έ κ°’μœΌλ‘œ μš”μ†Œμ™€ 곡간을 κ·ΈλŒ€λ‘œ λ³΄μ—¬μ€λ‹ˆλ‹€.


⭐ 이건 κΌ­ κΈ°μ–΅ν•©μ‹œλ‹€! λ„ˆλ¬΄ μ€‘μš”ν•œ 속성 flex 속성!
βœ–οΈ
⭐⭐⭐display:flex⭐⭐⭐
λΆ€λͺ¨λ°•μŠ€(container)μ•ˆμ— μžμ‹λ°•μŠ€(item)λ₯Ό μ •λ ¬ν•˜λŠ” μ†μ„±μž…λ‹ˆλ‹€.
flexλ₯Ό μ μš©ν•˜λŠ” μˆœκ°„λΆ€ν„° μžμ‹λ°•μŠ€λŠ” κ°€λ‘œλ‘œ μ •λ ¬λ©λ‹ˆλ‹€.
μ΄λ•Œ μžμ‹λ°•μŠ€μ˜ κ°€λ‘œ λ„“μ΄μ˜ 총 합이 λΆ€λͺ¨ λ°•μŠ€μ˜ 넓이λ₯Ό λ„˜κ²Œ 되면
μžμ‹ λ°•μŠ€μ˜ μ‚¬μ΄μ¦ˆκ°€ μžλ™μœΌλ‘œ 쀄어듀며 λΆ€λͺ¨ λ°•μŠ€λ₯Ό μ±„μ›λ‹ˆλ‹€.
μ»¨ν…Œμ΄λ„ˆμ— flexκ°€ 적용되면 μžμ‹λ“€μ„ λ‹€μ–‘ν•˜κ²Œ μ •λ ¬ν•˜λŠ” ν•˜μœ„ μ •λ ¬ 속성듀을 ν•¨κ»˜ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
⭐ μ€‘μš”! display:flex 속성은 λΆ€λͺ¨λ°•μŠ€μ— μ μš©ν•΄μ•Ό ν•˜λ©°,
이에 λ”°λ₯Έ ν•˜μœ„ μ •λ ¬ 속성 λ˜ν•œ λΆ€λͺ¨λ°•μŠ€μ— μ μš©ν•˜μ—¬μ•Ό ν•©λ‹ˆλ‹€.
<ν•˜μœ„ μ •λ ¬ 속성>
⭐ 1. justify-content
λΆ€λͺ¨ λ°•μŠ€ μ•ˆμ— μžμ‹ λ°•μŠ€λ“€μ„ κ°€λ‘œλ‘œ μ •λ ¬ν•  λ•Œ μ‚¬μš©ν•˜λŠ” μ†μ„±μž…λ‹ˆλ‹€.
πŸ”₯ - justify-content : flex-start;
: κΈ°λ³Έ κ°’μœΌλ‘œ λΆ€λͺ¨λ°•μŠ€ μ•ˆμ— μžμ‹ λ°•μŠ€λ“€μ„ μ™Όμͺ½μ—μ„œ 였λ₯Έμͺ½μœΌλ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - justify-content : flex-end;
: λΆ€λͺ¨λ°•μŠ€ μ•ˆμ— μžμ‹ λ°•μŠ€λ“€μ„ 였λ₯Έμͺ½μ—μ„œ μ™Όμͺ½μœΌλ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - justify-content : flex-center;
: λΆ€λͺ¨λ°•μŠ€ μ•ˆμ— μžμ‹ λ°•μŠ€λ“€μ„ κ°€μš΄λ°λ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - justify-content : space-between;
: λΆ€λͺ¨λ°•μŠ€ μ•ˆμ— μžμ‹λ°•μŠ€λ“€μ„ λ™μΌν•œ μ—¬λ°±μœΌλ‘œ μ–‘μͺ½ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - justify-content : space-around;
: μžμ‹λ°•μŠ€μ— μ–‘ μ˜†μœΌλ‘œ λ™μΌν•œ 간격을 μ£Όμ–΄ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - justify-content : space-evenly;
: λΆ€λͺ¨λ°•μŠ€ μ•ˆμ— μžμ‹λ°•μŠ€λ“€μ„ κ³ λ₯΄κ²Œ λ™μΌν•œ κ°„κ²©μœΌλ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.


⭐ 2. align-items
λΆ€λͺ¨ λ°•μŠ€ μ•ˆμ— μžˆλŠ” μžμ‹ λ°•μŠ€λ“€μ„ μ„Έλ‘œλ‘œ μ •λ ¬ν•˜λŠ” μ†μ„±μž…λ‹ˆλ‹€.
λΆ€λͺ¨ λ°•μŠ€λ₯Ό κΈ°μ€€μœΌλ‘œ top/middle/bottom μͺ½μœΌλ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - align-items: flex-start;
: λΆ€λͺ¨ λ°•μŠ€μ˜ top μœ„μΉ˜λ‘œ μžμ‹λ°•μŠ€λ“€μ„ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - align-items: flex-end;
: λΆ€λͺ¨ λ°•μŠ€μ˜ bottom μœ„μΉ˜λ‘œ μžμ‹ λ°•μŠ€λ“€μ„ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - align-items: center;
: λΆ€λͺ¨ λ°•μŠ€μ˜ middle μœ„μΉ˜λ‘œ μžμ‹ λ°•μŠ€λ“€μ„ μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - align-items: baseline;
: μžμ‹ λ°•μŠ€λ“€μ„ λΆ€λͺ¨ λ°•μŠ€μ˜ μ‹œμž‘ μœ„μΉ˜μ— μ •λ ¬ν•©λ‹ˆλ‹€.
(=flex-start와 λ™μΌν•œ κ²°κ³Όκ°’)
πŸ”₯ - align-items: stretch;
: μžμ‹ λ°•μŠ€λ₯Ό λΆ€λͺ¨ λ°•μŠ€μ˜ 높이에 맞좰 λŠ˜λ¦½λ‹ˆλ‹€.
μ΄λ•Œ, μžμ‹ λ°•μŠ€μ—λŠ” heigh 속성이 μ—†μ–΄μ•Ό ν•©λ‹ˆλ‹€.

⭐ 3. flex-direction
μžμ‹ λ°•μŠ€μ˜ λ‚˜μ—΄ λ°©ν–₯을 μ •ν•˜λŠ” μ†μ„±μž…λ‹ˆλ‹€.
μžμ‹ λ°•μŠ€λ₯Ό block 속성 처럼 μ„Έλ‘œλ‘œ λ‚˜μ—΄ν•˜κ±°λ‚˜
flex의 κΈ°λ³Έκ°’μ²˜λŸΌ κ°€λ‘œλ₯Ό λ‚˜μ—΄ν•  λ•Œ 주둜 μ‚¬μš©ν•©λ‹ˆλ‹€.
속성값이 -reverseκ°€ λΆ™μœΌλ©΄ start와 end의 μžλ¦¬κ°€ λ°”λ€Œκ²Œ λ©λ‹ˆλ‹€.
πŸ”₯ - flex-direction: row;
: κΈ°λ³Έκ°’μœΌλ‘œ flexλ₯Ό μ μš©ν•œ κΈ°λ³Έ λͺ¨μŠ΅κ³Ό 같이 κ°€λ‘œλ‘œ μžμ‹ λ°•μŠ€λ“€μ„ λ‚˜μ—΄ν•©λ‹ˆλ‹€.
πŸ”₯ - flex-direction: row-reverse;
: μžμ‹ λ°•μŠ€λ“€μ„ κ°€λ‘œλ‘œ λ°˜μ „ μ‹œν‚΅λ‹ˆλ‹€.
πŸ”₯ - flex-direction: column;
: μžμ‹ λ°•μŠ€λ“€μ„ μœ„μ—μ„œ μ•„λž˜λ‘œ λ‚˜μ—΄ν•©λ‹ˆλ‹€.
πŸ”₯ - flex-direction: column-reverse;
: μžμ‹ λ°•μŠ€λ“€μ„ μ„Έλ‘œλ‘œ λ°˜μ „ μ‹œν‚΅λ‹ˆλ‹€.
⭐ 4. flex-wrap
flexλ₯Ό μ μš©ν•˜κ²Œ 되면 μžμ‹ μš”μ†Œλ“€μ΄ λΆ€λͺ¨ λ°•μŠ€μ˜ 넓이보닀 넓을 λ•Œ
μžλ™μœΌλ‘œ μžμ‹μ˜ 넓이λ₯Ό λ¬΄μ‹œν•˜κ³  1쀄에 걸쳐 컨텐츠λ₯Ό μž‘κ²Œ μ°Œκ·ΈλŸ¬νŠΈλ¦½λ‹ˆλ‹€.
μ΄λ•Œ λ§Œμ•½ μžμ‹μ˜ 넓이와 높이λ₯Ό κ·ΈλŒ€λ‘œ μœ μ§€ν•˜κ³  μ‹Άλ‹€λ©΄ flex-wrap을 μ‚¬μš©ν•©λ‹ˆλ‹€.
πŸ”₯ - flex-wrap: nowrap;
: κΈ°λ³Έ κ°’μœΌλ‘œ λͺ¨λ“  μžμ‹ μš”μ†Œλ“€μ„ ν•œ 쀄에 걸쳐 λΆ€λͺ¨ λ°•μŠ€μ— 맞좰 μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - flex-wrap: wrap;
: μžμ‹ μš”μ†Œλ“€μ˜ 넓이 높이λ₯Ό μœ μ§€ν•˜λ©° μ—¬λŸ¬ 쀄에 걸쳐 μ •λ ¬ν•©λ‹ˆλ‹€.
πŸ”₯ - flex-wrap: wrap-reverse;
: μžμ‹ μš”μ†Œλ“€μ„ μ—¬λŸ¬ 쀄에 걸쳐 λ°˜λŒ€λ‘œ μ •λ ¬ν•©λ‹ˆλ‹€.
⭐ 5. gap : 컨텐츠 사이 μ—¬λ°±
gap을 μ‚¬μš©ν•˜λ©΄ flexκ°€ 적용된 μžμ‹ μš”μ†Œ 사이에 간격을 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.
gap은 컨텐츠 사이에 생기며, 이것을 gutter라고 ν‘œν˜„ν•˜κΈ°λ„ ν•©λ‹ˆλ‹€.
값을 1개만 μ“°λ©΄ row, columnλ°©ν–₯으둜 λ™μΌν•œ 간격을 λ§Œλ“€μ–΄μ£Όκ³ ,
값을 2개둜 λ‚˜λˆ„μ–΄ μ“°λ©΄ μ•žμžλ¦¬κ°€ columnλ°©ν–₯, λ’·μžλ¦¬κ°€ rowλ°©ν–₯μž…λ‹ˆλ‹€.
γ„΄> flexκ°€ μ„€μ •λ˜μ–΄ μžˆμ–΄μ•Ό μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
⭐ 6. flex-flow : λ‚˜μ—΄λ°©ν–₯ + 감싸기 속성
flex-direction(λ‚˜μ—΄ 속성) + flex-wrap(감싸기 속성)을 ν•œκΊΌλ²ˆμ— μ„ μ–Έν•  λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.
두 μ†μ„±μ˜ 쑰합은 많이 μ‚¬μš©λ˜κΈ° λ•Œλ¬Έμ— ν•œ λ²ˆμ— μ„ μ–Έν•˜κ³  싢을 λ•Œ flex-flowλ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
두 μ†μ„±μ˜ 속성값을 곡백으둜 κ΅¬λΆ„ν•˜μ—¬ ν•œ λ²ˆμ— μ”λ‹ˆλ‹€.
πŸ”₯ - flex-flow: λ‚˜μ—΄λ°©ν–₯ 감싸기;
ex) flex-flow: cloumn wrap;
-> μ„Έλ‘œ λ°©ν–₯으둜 λ‚˜μ—΄ν•˜κ³ , μžμ‹ μš”μ†Œ 넓이λ₯Ό μœ μ§€ν•©λ‹ˆλ‹€.
ex) flex-flow: row wrap-reverse;
-> κ°€λ‘œ λ°©ν–₯으둜 λ‚˜μ—΄ν•˜κ³ , μžμ‹ μš”μ†Œ 넓이λ₯Ό μœ μ§€ν•˜λ©° λ’€μ§‘μŠ΅λ‹ˆλ‹€.

πŸ—¨οΈ μ†μœΌλ‘œ 직접 κ³΅λΆ€ν•œ λ‚΄μš©μ„ λ°”νƒ•μœΌλ‘œ μž‘μ„±ν•œ κΈ€μ΄λžλ‹ˆλ‹€ !
βœ–οΈ
μ•žμœΌλ‘œλ„ μ—΄μ‹¬νžˆ κ³΅λΆ€ν•΄μ„œ λ§Žμ€ λ‚΄μš©μ„ κ³΅μœ ν•˜κ² μŠ΅λ‹ˆλ‹€ :)

profile
🎧 α΄˜ΚŸα΄€ΚΙͺΙ΄Ι’: UXUI (Feat: coding) ─────────βšͺ───── 𝟸:𝟷𝟾 / 𝟹:πŸ»πŸΌβ € γ…€ ◄◄⠀▐▐⠀►► ───○ πŸ”Š

0개의 λŒ“κΈ€