πŸ“Web Developing/CSS 기초

III. λ°•μŠ€ λͺ¨λΈ - 4. μ›Ή λ¬Έμ„œμ˜ λ ˆμ΄μ•„μ›ƒ λ§Œλ“€κΈ°

Hush 2022. 6. 4. 18:02

display : 배치 방법을 κ²°μ •

display 속성을 μ‚¬μš©ν•˜λ©΄ λΈ”λ‘λ ˆλ²¨ μš”μ†Œμ•„ 인라인 레벨 μš”μ†Œλ₯Ό μ„œλ‘œ λ°”κΏ”μ„œ μ‚¬μš©ν•  수 μžˆλ‹€.

display 속성은 주둜 μ›Ή λ¬Έμ„œμ˜ λ‚΄λΉ„κ²Œμ΄μ…˜μ„ λ§Œλ“€λ©΄μ„œ 메뉴 ν•­λͺ©μ„ κ°€λ‘œλ‘œ λ°°μΉ˜ν•  λ•Œ 많이 μ‚¬μš©ν•˜κ³ , 이미지λ₯Ό ν‘œ ν˜•νƒœλ‘œ λ°°μΉ˜ν•  μˆ˜λ„ μžˆλ‹€.

display μ†μ„±μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” 값은 맀우 λ§Žμ€λ°, 이 μ€‘μ—μ„œ λ¬Έμ„œ λ ˆμ΄μ•„μ›ƒμ„ λ§Œλ“€ λ•Œ 자주 μ‚¬μš©ν•˜λŠ” 속성은 λ‹€μŒκ³Ό κ°™λ‹€.

μ’…λ₯˜ μ„€λͺ…
block 인라인 레벨 μš”μ†Œλ₯Ό 블둝 레벨 μš”μ†Œλ‘œ λ§Œλ“­λ‹ˆλ‹€.
inline 블둝 레벨 μš”μ†Œλ₯Ό 인라인 레벨 μš”μ†Œλ‘œ λ§Œλ“­λ‹ˆλ‹€..
inline-block 인라인 레벨 μš”μ†Œμ™€ 블둝 레벨 μš”μ†Œμ˜ 속성을 λͺ¨λ‘ κ°€μ§€κ³  있으며 λ§ˆμ§„κ³Ό νŒ¨λ”©μ„ μ§€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
none ν•΄λ‹Ή μš”μ†Œλ₯Ό 화면에 ν‘œμ‹œν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λ‹€μŒ μ˜ˆμ œλŠ” μˆ˜ν‰ λ‚΄λΉ„κ²Œμ΄μ…˜μ„ λ§Œλ“€κΈ° μœ„ν•΄ μ›λž˜ 블둝 레벨 μš”μ†Œμ˜€λ˜ λͺ©λ‘μ„ 인라인 레벨 μš”μ†Œλ‘œ λ°”κΎΌ 것이닀.

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="utf-8">  
        <title>Html-basic</title>
        <style>
            * {box-sizing: border-box;}
            nav ul {list-style : none;}
            nav ul li {
                display: inline-block;
                padding: 20px;
                margin: 0 20px;
                border : 1px solid #222;
            }
        </style>
    </head>
    <body>
        <h1>navigation bar</h1>
        <nav>
            <ul>
                <li>menu 1</li>
                <li>menu 2</li>
                <li>menu 3</li>
                <li>menu 4</li>
            </ul>
        </nav>
    </body>
</html>

 

float : μ™Όμͺ½μ΄λ‚˜ 였λ₯Έμͺ½μœΌλ‘œ 배치

μ›Ή λ¬Έμ„œλ₯Ό λ§Œλ“€λ‹€ 보면 <p> νƒœκ·Έμ²˜λŸΌ λ¬Έλ‹¨μ˜ μ™Όμͺ½μ΄λ‚˜ 였λ₯Έμͺ½μ— 이미지λ₯Ό λ‚˜λž€νžˆ ν‘œμ‹œν•΄μ•Ό ν•  κ²½μš°κ°€ μžˆλ‹€.

그런데 <p> νƒœκ·ΈλŠ” 블둝 레벨 μš”μ†Œμ΄λ‹ˆ 기본적으둜 μ΄λŠ” λΆˆκ°€λŠ₯ν•˜λ‹€.

이럴 λ•ŒλŠ” float 속성을 μ‚¬μš©ν•˜μ—¬ 이미지λ₯Ό ν‘œμ‹œν•˜κ³  κ·Έ 주변에 ν…μŠ€νŠΈκ°€ λ‘˜λŸ¬μ‹Έλ„λ‘ ν•  수 μžˆλ‹€.

float속성은 μ›Ή μš”μ†Œλ₯Ό λ¬Έμ„œ μœ„μ— λ–  있게 λ§Œλ“ λ‹€.

μ—¬κΈ°μ„œ "λ–  μžˆλ‹€"λŠ” μ˜λ―ΈλŠ” μš”μ†Œκ°€ μ™Όμͺ½ κ΅¬μ„μ΄λ‚˜ 였λ₯Έμͺ½ ꡬ석에 λ°°μΉ˜λœλ‹€λŠ” 것을 λ§ν•œλ‹€.

float μ†μ„±μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” κ°’μ—λŠ” left, right, 그리고 쒌우 μ–΄λŠ μͺ½λ„ μ•„λ‹Œ 것(none)이 μžˆμŠ΅λ‹ˆλ‹€.

λ‹€μŒ μ˜ˆμ œλŠ” 이미지λ₯Ό ν…μŠ€νŠΈμ˜ μ™Όμͺ½μ— λ–  있게 ν•˜λ €κ³  img μš”μ†Œμ— float : left 속성을 μ μš©ν–ˆλ‹€.

이미지λ₯Ό μ™Όμͺ½μ— λ°°μΉ˜ν•œ ν›„ 였λ₯Έμͺ½μ— μ˜€λŠ” ν…μŠ€νŠΈμ™€ μ λ‹Ήν•œ 간격을 μœ μ§€ν•˜λ„λ‘ margin-right 속성도 ν•¨κ»˜ μ‚¬μš©ν•œλ‹€.

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="utf-8">  
        <title>Html-basic</title>
        <style>
            img {
                float : left;
                margin-right : 40px;
            }
        </style>
    </head>
    <body>
        <img src="images/EiffleTower.jpg" alt="eiffle tower" width="30%">
        <p>이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. 이것은 μ—νŽ νƒ‘μ΄λ‹€. </p>
    </body>
</html>

 

 

 

float 속성을 ν•΄μ œν•˜λŠ” clear 속성

float 속성을 μ‚¬μš©ν•΄ μ›Ήμ˜ μš”μ†Œλ₯Ό μ™Όμͺ½μ΄λ‚˜ 였λ₯Έμͺ½μ— λ°°μΉ˜ν•˜λ©΄ κ·Έλ‹€μŒμ— λ„£λŠ” λ‹€λ₯Έ μš”μ†Œμ—λ„ λ˜‘κ°™μ€ 속성이 μ „λ‹¬λœλ‹€. λ”°λΌμ„œ float 속성이 더 이상 μœ μš©ν•˜μ§€ μ•Šλ‹€κ³  μ•Œλ € μ£ΌλŠ” 속성이 ν•„μš”ν•œλ°, 그것이 λ°”λ‘œ clear 속성이닀.

μ’…λ₯˜ μ„€λͺ…
left float : left λ₯Ό ν•΄μ œν•©λ‹ˆλ‹€.
right float : rightλ₯Ό ν•΄μ œν•©λ‹ˆλ‹€.
both float : left 와 right λ₯Ό ν•΄μ œν•©λ‹ˆλ‹€.

λ‹€μŒ μ˜ˆμ œμ—μ„œ box1κ³Ό box2 μš”μ†ŒλŠ” float: leftλ₯Ό μ μš©ν–ˆμœΌλ―€λ‘œ μ™Όμͺ½λΆ€ν„° μ°¨λ‘€λŒ€λ‘œ λ°°μΉ˜λœλ‹€. ν•˜μ§€λ§Œ box3μš”μ†ŒλŠ” float 속성을 μ§€μ •ν•˜μ§€ μ•Šμ•˜μœΌλ―€λ‘œ μ›Ή λΈŒλΌμš°μ €μ˜ κΈ°λ³Έ νλ¦„μœΌλ‘œ λ°°μΉ˜λœλ‹€. λ§ˆμ§€λ§‰ box4μ—λŠ” clear : left 속성을 μ‚¬μš©ν–ˆμœΌλ―€λ‘œ μ•žμ—μ„œ μ‚¬μš©ν•œ float 속성이 ν•΄μ œλ˜μ–΄ ν‰λ²”ν•œ λ°•μŠ€ ν˜•νƒœλ‘œ ν‘œμ‹œλœλ‹€.

 

 

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="utf-8">  
        <title>Html-basic</title>
        <style>
            *{
                margin : 20px;
                padding : 20px;
            }
            #box1 {
                background: red;
                float : left;
            }
            #box2 {
                background: blue;
                float: left;
            }
            #box3 {
                background: green;
                clear : left;
            }
            #box4 {
                background: purple;
            }
        </style>
    </head>
    <body>
        <div id="box1">λ°•μŠ€1</div>
        <div id="box2">λ°•μŠ€2</div>
        <div id="box3">λ°•μŠ€3</div>
        <div id="box4">λ°•μŠ€4</div>
    </body>
</html>