λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
side-project/GitHub 따라 λ§Œλ“€κΈ°

[CSS] μžμ‹ μš”μ†Œ κ°€μš΄λ° μ •λ ¬ 및 수직 μ •λ ¬

by 솑두뢀 2022. 4. 5.
728x90
λ°˜μ‘ν˜•

 

[ margin: 0 auto ] : κ°€μš΄λ° μ •λ ¬ 

header .inner {
  max-width: 980px;
  height: 78px;
  margin: 0 auto;
}
-   max-width: 980px; μ΅œλŒ€ κ°€λ‘œ λ„ˆλΉ„, 상황에 따라 쀄어 λ“€ 수 μžˆλ‹€.
 
 margin: 0 auto; κ°€μš΄λ° μ •λ ¬ λŒ€ν‘œμ μΈ 속성 (μƒν•˜ 0 / 쒌우 auto)
--ex. μ™Όμͺ½ κ°’ 5 였λ₯Έμͺ½ κ°’ 5 ==>  μ™Όμͺ½ auto 였λ₯Έμͺ½ auto

⭐ μ£Όμ˜μ‚¬ν•­ ⭐

νŠΉμ •ν•œ μš”μ†Œμ— κ°€λ‘œ μ‚¬μ΄μ¦ˆκ°€ μ •μ˜λ˜μ–΄μ Έ μžˆμ–΄μ•Ό 'margin : 0 auto' μ„€μ • 값을 μ‚¬μš© ν•  수 μžˆλ‹€.  


➑ max-width /기본적인 κ°€λ‘œ μ‚¬μ΄μ¦ˆ(width)κ°€ μ •ν•΄μ Έ μžˆμ–΄μ•Ό `margin: 0 auto`λ₯Ό 톡해 κ°€μš΄λ° μ •λ ¬ κ°€λŠ₯

 

header .inner
νŠΉμ •ν•œ κ°€λ‘œ λ„ˆλΉ„λ₯Ό κ°€μ§€κ³ 
header μ•ˆμ— μžˆλŠ” λͺ¨λ“  μ½˜ν…μΈ λ“€μ„ 화면에 쀑앙 정렬을 ν•΄μ£ΌλŠ” μš©λ„

[ ν›„손 μ„ νƒμž ]

πŸ”₯ problemπŸ”₯
section μ•ˆμ—μ„œ 타고 타고 λ‚΄λ €κ°€λŠ” μžμ†λ“€ λͺ¨λ‘λ₯Ό λ‹€ μ •μ˜ν•˜λ©΄ κ΄€λ¦¬ν•˜κΈ°λ„ μž‘μ„±ν•˜κΈ°λ„ μ–΄λ ΅κ³  λΆˆνŽΈν•˜λ‹€.

- μ„ νƒμžλ₯Ό 타고 타고 μž‘μ„±

// header μ•ˆμ— inner μ•ˆμ— menu-group 
header .inner .menu-group{
  display: flex;
  align-items: center;
  height: 100%;
}
 
-  후손 μ„ νƒμž ⭐
 
// header λΆ€λΆ„μ˜ innerλ₯Ό κ±΄λ„ˆ λ›°μ–΄μ„œ 메뉴 그룹으둜
header .menu-group{
  display: flex;
  align-items: center;
  height: 100%;
}

[ μˆ˜ν‰ ꡬ쑰 ] : display : flex;

πŸ”₯ problem πŸ”₯
menu-groupμ•ˆμ— 2개의 μžμ‹ μš”μ†Œ .logo / .main-menu
λ‘œκ³ λž‘ 메인 메뉴 전체가 μˆ˜ν‰ 정렬이 λ˜μ–΄μ•Ό ν•œλ‹€.

 

1단계, logo & main-menu μˆ˜ν‰ μ •λ ¬

//menu-groupμ•ˆμ— μžμ‹ μš”μ†Œλ“€ μˆ˜ν‰ μ •λ ¬

header .menu-group{

  display: flex;

}

βœ… λ‘œκ³  λΆ€λΆ„κ³Ό λ©”뉴 전체가 μˆ˜ν‰ ꡬ쑰λ₯Ό κ°€μ§€κ²Œ λ˜μ—ˆμŒ βœ…

 

2단계, <li> μˆ˜ν‰ μ •λ ¬

메인 메뉴 μ•ˆμ— μžˆλŠ” 각각의 ν•­λͺ©λ“€λ„ μˆ˜ν‰ 정렬이 λ˜μ–΄μ•Ό ν•œλ‹€. 

 

// menu-group μ•ˆμ— μžμ‹μš”μ†Œλ“€ μˆ˜ν‰μ •λ ¬

header .main-menu {

  display: flex;

}

 

[ μˆ˜μ§ κ°€μš΄λ° μ •λ ¬ ] : align-items: center;

πŸ”₯ problem πŸ”₯
menu-groupμ•ˆμ— ν•­λͺ©λ“€μ„ 수직 κ°€μš΄λ° μ •λ ¬ ν•΄μ€˜μ•Ό ν•œλ‹€.
1️⃣ display: flex;κ°€ μ„€μ • λ˜μ–΄μžˆλ‹€λ©΄ μ‚¬μš©ν•  수 μžˆλŠ” 수직 μ •λ ¬ (align-items: center;)
header .menu-group {
  display: flex;
  background-color: olivedrab;
}

κΈ°λ³Έ μƒνƒœ

πŸ”₯ problem πŸ”₯
μžμ‹ μš”μ†Œλ“€μ„ menu-group의 높이에 영ν–₯을 λ°›μœΌλ©° 수직 κ°€μš΄λ° μ •λ ¬λœλ‹€.
2️⃣ 수직 κ°€μš΄λ° μ •λ ¬ μ‹œμΌ°μ§€λ§Œ menu-group 자체의 높이가 λ„ˆλ¬΄ μž‘μ•„μ„œ λ³€ν™”κ°€ μ—†λ‹€.

header .menu-group {

  display: flex;
  background-color: olivedrab;
  align-items: center;
}

align-items:&nbsp;center;

menu-group의 height 100%λŠ” 메뉴 그룹의 λΆ€λͺ¨ μš”μ†ŒμΈ inner의 영ν–₯을 λ°›λŠ”λ‹€.
= inner의 height 78px의 100% λ§ŒνΌμ„ μ‚¬μš©ν•œλ‹€

header .menu-group {
  display: flex;
  background-color: olivedrab;
  align-items: center;
  height: 100%;
}

 

728x90
λ°˜μ‘ν˜•

λŒ“κΈ€