μ›Ήκ°œλ°œ/CSS

CSS float μ •λ ¬ κ°€μš΄λ° κ°€λ‘œ μ„Έλ‘œ 쀑앙 속성 μ‚¬μš© 방법

νŒŒμΈλ“œλ·° 2025. 1. 17. 20:09
λ°˜μ‘ν˜•

μ›Ή νŽ˜μ΄μ§€λ₯Ό λ””μžμΈν•  λ•Œ 각 μš”μ†Œλ₯Ό μ •ν™•ν•˜κ²Œ flat 정렬을 ν•˜λŠ” 것은 맀우 μ€‘μš”ν•©λ‹ˆλ‹€. 특히, κ°€λ‘œ 및 μ„Έλ‘œ λ°©ν–₯ λͺ¨λ‘μ—μ„œ μš”μ†Œλ₯Ό 쀑앙에 λ°°μΉ˜ν•˜λ©΄ μ‚¬μš©μžμ—κ²Œ κ· ν˜• 작힌 λ ˆμ΄μ•„μ›ƒμ„ μ œκ³΅ν•©λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” CSS의 float 속성을 ν™œμš©ν•˜μ—¬ μš”μ†Œλ₯Ό κ°€λ‘œ 및 μ„Έλ‘œ λ°©ν–₯으둜 쀑앙 μ •λ ¬ν•˜λŠ” 방법을 μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

 

[CSS] float μ •λ ¬ κ°€μš΄λ° κ°€λ‘œ μ„Έλ‘œ 쀑앙 속성 μ‚¬μš© 방법
[CSS] float μ •λ ¬ κ°€μš΄λ° κ°€λ‘œ μ„Έλ‘œ 쀑앙 속성 μ‚¬μš© 방법

 

 

 

λͺ©μ°¨

     

     

     

    float μ†μ„±μ˜ ν•œκ³„μ™€ λŒ€μ•ˆ

    λ¨Όμ €, float 속성은 μš”μ†Œλ₯Ό μ™Όμͺ½μ΄λ‚˜ 였λ₯Έμͺ½μœΌλ‘œ λ– λ‹€λ‹ˆκ²Œ λ°°μΉ˜ν•˜λŠ” 데 μœ μš©ν•˜μ§€λ§Œ, μš”μ†Œλ₯Ό μ •ν™•νžˆ κ°€μš΄λ°μ— λ°°μΉ˜ν•˜λŠ” λ°λŠ” μ œμ•½μ΄ μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ, κ°€λ‘œ 및 μ„Έλ‘œ 쀑앙 정렬을 κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄μ„œλŠ” λ‹€λ₯Έ CSS 속성을 ν•¨κ»˜ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

     

     

     

     

     

     

     

     

    float κ°€λ‘œ 쀑앙 μ •λ ¬ 방법

    1. text-align: center μ‚¬μš©

    λΆ€λͺ¨ μš”μ†Œμ— text-align: centerλ₯Ό μ μš©ν•˜λ©΄ λ‚΄λΆ€μ˜ 인라인 λ˜λŠ” 인라인-블둝 μš”μ†Œλ“€μ΄ κ°€λ‘œ λ°©ν–₯으둜 쀑앙에 μ •λ ¬λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄:

    <div class="parent">
      <div class="child">λ‚΄μš©</div>
    </div>
    .parent {
      text-align: center;
    }
    
    .child {
      display: inline-block;
    }

     

    μ΄λ ‡κ²Œ ν•˜λ©΄ .child μš”μ†Œκ°€ .parent μš”μ†Œ λ‚΄μ—μ„œ κ°€λ‘œλ‘œ 쀑앙에 λ°°μΉ˜λ©λ‹ˆλ‹€.

     

     

     

     

     

    2. margin: 0 auto μ‚¬μš©

    블둝 레벨 μš”μ†Œμ˜ 경우, margin: 0 autoλ₯Ό μ‚¬μš©ν•˜μ—¬ κ°€λ‘œ 쀑앙 정렬을 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ•Œ, μš”μ†Œμ˜ λ„ˆλΉ„(width)λ₯Ό λͺ…μ‹œμ μœΌλ‘œ μ§€μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€.

    .child {
      width: 50%;
      margin: 0 auto;
    }

     

    μ΄λ ‡κ²Œ μ„€μ •ν•˜λ©΄ .child μš”μ†ŒλŠ” λΆ€λͺ¨ μš”μ†Œ λ‚΄μ—μ„œ κ°€λ‘œλ‘œ 쀑앙에 λ°°μΉ˜λ©λ‹ˆλ‹€.

     

     

     

     

     

     

     

     

    float μ„Έλ‘œ 쀑앙 μ •λ ¬ 방법

    1. line-height μ‚¬μš©

    ν…μŠ€νŠΈκ°€ ν•œ 쀄인 경우, line-heightλ₯Ό μ‚¬μš©ν•˜μ—¬ μ„Έλ‘œ 쀑앙 정렬을 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μš”μ†Œμ˜ 높이(height)와 λ™μΌν•œ 값을 line-height에 μ§€μ •ν•˜λ©΄ ν…μŠ€νŠΈκ°€ μ„Έλ‘œλ‘œ 쀑앙에 λ°°μΉ˜λ©λ‹ˆλ‹€.

    .child {
      height: 100px;
      line-height: 100px;
      text-align: center;
    }

     

    이 방법은 ν…μŠ€νŠΈκ°€ ν•œ 쀄일 λ•Œλ§Œ νš¨κ³Όμ μž…λ‹ˆλ‹€.

     

     

     

     

     

    2. display: table-cell μ‚¬μš©

    μ—¬λŸ¬ μ€„μ˜ ν…μŠ€νŠΈλ‚˜ 블둝 μš”μ†Œλ₯Ό μ„Έλ‘œλ‘œ 쀑앙 μ •λ ¬ν•˜λ €λ©΄ display: table-cellκ³Ό vertical-align: middle을 μ‘°ν•©ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

    <div class="parent">
      <div class="child">λ‚΄μš©</div>
    </div>
    .parent {
      display: table;
      width: 100%;
      height: 200px;
    }
    
    .child {
      display: table-cell;
      vertical-align: middle;
      text-align: center;
    }

     

    μ΄λ ‡κ²Œ ν•˜λ©΄ .child μš”μ†Œκ°€ .parent μš”μ†Œ λ‚΄μ—μ„œ μ„Έλ‘œλ‘œ 쀑앙에 λ°°μΉ˜λ©λ‹ˆλ‹€.

     

     

     

     

     

     

     

     

    float κ°€λ‘œ 및 μ„Έλ‘œ 쀑앙 μ •λ ¬ 방법

    1. positionκ³Ό transform μ‚¬μš©

    positionκ³Ό transform 속성을 μ‘°ν•©ν•˜μ—¬ μš”μ†Œλ₯Ό κ°€λ‘œ 및 μ„Έλ‘œ λͺ¨λ‘ 쀑앙에 λ°°μΉ˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

    <div class="parent">
      <div class="child">λ‚΄μš©</div>
    </div>
    .parent {
      position: relative;
      width: 100%;
      height: 200px;
    }
    
    .child {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }

    μ΄λ ‡κ²Œ μ„€μ •ν•˜λ©΄ .child μš”μ†ŒλŠ” .parent μš”μ†Œμ˜ μ •ν™•ν•œ 쀑앙에 λ°°μΉ˜λ©λ‹ˆλ‹€.

     

     

     

     

     

     

     

     

    float μ •λ ¬ 예제 μ½”λ“œ

    μ•„λž˜λŠ” μœ„μ—μ„œ μ„€λͺ…ν•œ 방법듀을 μ μš©ν•œ 전체 HTMLκ³Ό CSS μ½”λ“œμž…λ‹ˆλ‹€.

    <!DOCTYPE html>
    <html lang="ko">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>CSS 쀑앙 μ •λ ¬ 예제</title>
      <style>
        .parent {
          position: relative;
          width: 100%;
          height: 200px;
          border: 1px solid #000;
        }
    
        .child {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          padding: 20px;
          background-color: #f0f0f0;
          border: 1px solid #ccc;
        }
      </style>
    </head>
    <body>
      <div class="parent">
        <div class="child">κ°€λ‘œ 및 μ„Έλ‘œ 쀑앙에 배치된 μš”μ†Œ</div>
      </div>
    </body>
    </html>

     

    μœ„ μ½”λ“œλ₯Ό λΈŒλΌμš°μ €μ—μ„œ μ—΄λ©΄ .child μš”μ†Œκ°€ .parent μš”μ†Œμ˜ κ°€λ‘œ 및 μ„Έλ‘œ 쀑앙에 μ •ν™•ν•˜κ²Œ 배치된 것을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

     

     

    CSS float μš”μ†Œμ˜ κ°€λ‘œ 및 μ„Έλ‘œ 쀑앙에 μ •ν™•ν•˜κ²Œ 배치된 것을 확인

     


     

    CSSμ—μ„œ float μ†μ„±λ§ŒμœΌλ‘œλŠ” μš”μ†Œλ₯Ό κ°€λ‘œ 및 μ„Έλ‘œ λ°©ν–₯으둜 μ •ν™•ν•˜κ²Œ 쀑앙 μ •λ ¬ν•˜κΈ° μ–΄λ ΅μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ, text-align, margin, line-height, display, position, transform λ“±μ˜ 속성을 적절히 μ‘°ν•©ν•˜μ—¬ μ›ν•˜λŠ” λ ˆμ΄μ•„μ›ƒμ„ κ΅¬ν˜„ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ 방법듀을 μˆ™μ§€ν•˜λ©΄ λ‹€μ–‘ν•œ μƒν™©μ—μ„œ μœ μ—°ν•˜κ²Œ 쀑앙 정렬을 μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

     

    μΆ”μ²œκΈ€

     

    CSS μ„ νƒμž(Selector) κ°œλ… 정리와 예제 ν™œμš© 방법

    CSS(Cascading Style Sheets)λŠ” HTML μš”μ†Œμ˜ μŠ€νƒ€μΌμ„ μ§€μ •ν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€. κ·Έμ€‘μ—μ„œλ„ 'μ„ νƒμž(Selector)'λŠ” νŠΉμ • μš”μ†Œλ₯Ό μ„ νƒν•˜κ³  μŠ€νƒ€μΌμ„ μ μš©ν•˜λŠ” 핡심적인 역할을 ν•©λ‹ˆλ‹€. 이번 ν¬μŠ€νŒ…μ—μ„œλŠ” CSS

    findview.tistory.com

    λ°˜μ‘ν˜•