πŸ“Web Developing/CSS 기초

III. λ°•μŠ€ λͺ¨λΈ - 5. μ›Ή μš”μ†Œμ˜ μœ„μΉ˜ μ§€μ •ν•˜κΈ°

Hush 2022. 6. 4. 20:37

left, right, top, bottom : μ›Ή μš”μ†Œμ˜ μœ„μΉ˜λ₯Ό μ •ν•˜λŠ” 속성

λ¨Όμ € μ›Ή λ¬Έμ„œμ—μ„œ μš”μ†Œλ₯Ό μ›ν•˜λŠ” 곳에 κ°–λ‹€ λ†“μœΌλ €λ©΄ μœ„μΉ˜λ₯Ό μ§€μ •ν•  수 μžˆμ–΄μ•Ό ν•œλ‹€. μ΄λ•Œ μ‚¬μš©ν•˜λŠ” 속성이 left, right, top, bottom이닀.

즉 position μ†μ„±μœΌλ‘œ κΈ°μ€€ μœ„μΉ˜λ₯Ό μ •ν•œ λ’€ μš”μ†Œμ˜ μœ„μΉ˜λ₯Ό left, right, top, bottom μ†μ„±μ—μ„œ μ„ νƒν•˜κ³  속성값을 μ§€μ •ν•˜λ©΄ λœλ‹€.

μ’…λ₯˜ μ„€λͺ…
left κΈ°μ€€ μœ„μΉ˜μ™€ μš”μ†Œ 사이에 μ™Όμͺ½μœΌλ‘œ μ–Όλ§ˆλ‚˜ λ–¨μ–΄μ Έ μžˆλŠ”μ§€ μ§€μ •
right κΈ°μ€€ μœ„μΉ˜μ™€ μš”μ†Œ 사이에 였λ₯Έμͺ½μœΌλ‘œ μ–Όλ§ˆλ‚˜ λ–¨μ–΄μ Έ μžˆλŠ”μ§€ μ§€μ •
top κΈ°μ€€ μœ„μΉ˜μ™€ μš”μ†Œ 사이에 μœ„μͺ½μœΌλ‘œ μ–Όλ§ˆλ‚˜ λ–¨μ–΄μ Έ μžˆλŠ”μ§€ μ§€μ •
bottom κΈ°μ€€ μœ„μΉ˜μ™€ μš”μ†Œ 사이에 μ•„λž˜μͺ½μœΌλ‘œ μ–Όλ§ˆλ‚˜ λ–¨μ–΄μ Έ μžˆλŠ”μ§€ μ§€μ •

λ‹€μŒ μ˜ˆμ œλŠ” left, right, top, bottom 속성을 μ‚¬μš©ν•΄μ„œ ν…μŠ€νŠΈ 단락을 자유둭게 λ°°μΉ˜ν•œ 것이닀.

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="utf-8">  
        <title>Html-basic</title>
        <style>
            #pos1 {
                position :absolute;
                left: 50px;
                top: 50px;
                width: 200px;
            }
            #pos2 {
                position: absolute;
                right: 100px;
                top: 100px;
                width: 200px;
            }
            #pos3 {
                position: absolute;
                left : 100px;
                bottom : 100px;
                width: 200px;
            }
        </style>
    </head>
    <body>
        <p id="pos1">예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
        <p id="pos2">예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
        <p id="pos3">예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. 예제 ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
    </body>
</html>

 

position : 배치 방법을 μ§€μ •

position 속성은 μ›Ή λ¬Έμ„œ μ•ˆμ˜ μš”μ†Œλ₯Ό 자유자재둜 λ°°μΉ˜ν•΄ μ£Όλ―€λ‘œ HTMLκ³Ό CSSλ₯Ό μ΄μš©ν•΄ μ›Ή λ¬Έμ„œλ₯Ό λ§Œλ“€ λ•Œ μ€‘μš”ν•˜λ‹€.

position 속성을 μ΄μš©ν•˜λ©΄ ν…μŠ€νŠΈλ‚˜ 이미지 μš”μ†Œλ₯Ό λ‚˜λž€νžˆ λ°°μΉ˜ν•  μˆ˜λ„ 있고 μ›ν•˜λŠ” μœ„μΉ˜λ₯Ό 선택할 수 μžˆλ‹€.

position μ†μ„±μ˜ 속성값듀은 λ‹€μŒκ³Ό κ°™λ‹€.

μ’…λ₯˜ μ„€λͺ…
static λ¬Έμ„œμ˜ 흐름에 맞좰 λ°°μΉ˜ν•©λ‹ˆλ‹€. κΈ°λ³Έκ°’μž…λ‹ˆλ‹€.
relative μœ„μΉ«κ°’μ„ μ§€μ •ν•  수 μžˆλ‹€λŠ” 점을 μ œμ™Έν•˜λ©΄ staticκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
absolute relative값을 μ‚¬μš©ν•œ μƒμœ„ μš”μ†Œλ₯Ό 기쀀을 μœ„μΉ˜λ₯Ό μ§€μ •ν•΄ λ°°μΉ˜ν•©λ‹ˆλ‹€.
fixed λΈŒλΌμš°μ € 창을 κΈ°μ€€μœΌλ‘œ μœ„μΉ˜λ₯Ό μ§€μ •ν•΄ λ°°μΉ˜ν•©λ‹ˆλ‹€.
sticky staticκ³Ό 같이 일반적인 흐름을 λ”°λ₯΄λ‹€κ°€, 슀크둀 μœ„μΉ˜κ°€ μž„κ³„μ μ— 이λ₯΄λ©΄ fixed처럼 화면에 κ³ μ •λ˜λ„λ‘ λ°°μΉ˜ν•©λ‹ˆλ‹€.

λ‹€μŒ 예제의 첫 번째 단락과 두 번째 λ‹¨λ½μ˜ position 속성값은 각각 staticκ³Ό relativeλ₯Ό μ‚¬μš©ν–ˆμœΌλ―€λ‘œ μ›Ή λ¬Έμ„œμ˜ 흐름에 따라 μš”μ†Œκ°€ μœ„μ—μ„œ μ•„λž˜λ‘œ μžμ—°μŠ€λŸ½κ²Œ λ°°μΉ˜λœλ‹€.

μ„Έ 번째 λ‹¨λ½μœΌ position 속성값은 relativeμ΄λ©΄μ„œ right와 top속성이 μ§€μ •λ˜μ—ˆλ‹€. μ›λž˜λŠ” 두 번째 문단 밑에 μœ„μΉ˜ν•΄μ•Ό ν•˜μ§€λ§Œ right, top 속성이 μ§€μ •λ˜μ—ˆμœΌλ―€λ‘œ μ›λž˜ μœ„μΉ˜μ—μ„œ 였λ₯Έμͺ½μœΌλ‘œ 100px μ΄λ™ν•˜κ³  μœ„λ‘œ 50px μ˜¬λΌκ°„ 만큼 κ²Ήμ²˜μ„œ λ°°μΉ˜λ©λ‹ˆλ‹€.

λ§ˆμ§€λ§‰μœΌλ‘œ 였λ₯Έμͺ½ μœ„μ— μžˆλŠ” 검은색 μƒμžλŠ” fixed 값을 μ‚¬μš©ν–ˆμœΌλ―€λ‘œ μ›Ή λΈŒλΌμš°μ €μ—μ„œ 슀크둀 ν•˜λ”λΌλ„ 항상 같은 μœ„μΉ˜μ— λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="utf-8">  
        <title>Html-basic</title>
        <style>
            p{
                background: rgb(206, 206, 206);
                width: 300px;
            }
            #static {position: static; }
            #relative-1 {position: relative;}
            #relative-2 {
                position : relative;
                left: 100px;
                top: -50px;
            }
            #fixed {
                width: 100px;
                height: 100px;
                background-color: black;
                position: fixed;
                right: 30px;
                top: 30px;
            }
        </style>
    </head>
    <body>
        <p id="static">μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
        <p id="relative-1">μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
        <p id="relative-2">μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. μ˜ˆμ‹œ ν…μŠ€νŠΈμž…λ‹ˆλ‹€. </p>
        <p id="fixed"></p>
    </body>
</html>