반응형

한 줄 정리

 

border: 선 굵기, 선 스타일, 선 색상 ex) border: 2px soild red

선 스타일 :  soild(실선), double(두 줄), dotted(점 선)

 

border-color: 색상;

border-style: 선 스타일;

border-width: 선 두께;

 

display: inline (인라인으로 처리한다)

block (블록으로 처리한다)

inline-block (인라인이면서, 블록 속성을 가지게 한다)

none (디스플레이 화면에 나오지 않지만, 개발자 도구에는 존재한다)

 

list-style : 리스트 모양 (리스트 목록의 앞에 문자를 바꿔준다)

 

리스트 모양 custom해서 사용하기

.menu2{
    list-style: none;
}
.menu2 li::before{
    content: '善溢';
}

 

 

 


 

## CSS 서식관련 속성(목록 스타일)


-목록 스타일은 상단바 네비게이션을 만들 때 주로 사용된다.
-나중에는 list-style-image: url(아이콘 이미지경로)를 사용할 수 도 있고
  CSS가상 클래스 :befor를 사용하여 원하는 기호를 사용할 수 도 있다.

    <body>
        <ol class="menu">
            <li>menu-1</li>
            <li>menu-2</li>
            <li>menu-3</li>
            <li>menu-4</li>
            <li>menu-5</li>
        </ol>
    </body>

 

 .menu{
    list-style: lower-greek;
    list-style: lower-alpha;
 }

 

-목록에서 정하는 것 뿐만 아니라, 내가 원하는 기호로 저장할 수 있다.

.menu2{
    list-style: none;
}
/* 가상클래스 befor를 사용하여 원하는 기호를 사용할 수 있다 */

.menu2 li::before{
    content: '善溢';
}

.menu2 li::before{
    content: '♥';
}

 

 


## 블록 레벨 요소 vs 인라인 요소


-블록 레벨 요소
 : 자기가 속한 영역의 너비를 모두 차지하여 블록을 형성한다. (div, h1, p등...)

-인라인 요소
 : 자기에게 필요한 만큼의 공간만 차지한다. (span, a등...)

-만약 <a>태그를 생성하게되면 블록이 없는 필요한 만큼의 공간만 차지하는 인라인 요소가된다.
 이때 만들어진 <a> 요소가 블록을 형성하게 하고 싶다면 CSS의 disply를 사용하게되면 블록요소로 변경이 가능하다.
 그 반대로 블록 요소를 인라인 요소로도 변경은 가능하다.



# disply 속성값

-disply에는 미리 정의되어 있는 키워드를 속성값으로 지정한다.
==================================================================
|    속성값 | 의미 |
----------------------------------------------------------------------------------------------------------------

 

inline | 인라인으로 처리한다. |

div{
    border: 2px solid red;
    display: inline;
}

 

----------------------------------------------------------------------------------------------------------------

 

block | 블록 레벨로 처리한다. |

 

span은 인라인 레벨 요소이지만, block을 적용하니, block 레벨 요소로 변경이 된다.

span{
    border-style: solid;
    border-radius: 2px;
    border-color: blue;
    display: block;
}


----------------------------------------------------------------------------------------------------------------

 

inline-block | 인라인으로 배치하되 블록 레벨의 요소 속성을 추가할수 있도록 처리한다. |

 

 

인라인 요소는 기본적으로 크기를 가질 수 없다.

div{
    border: 2px solid red;
    width: 300px;
    height: 50px;
}

span{
    border: 2px solid blue;
    width: 300px;
    height: 50px;
}

 

하지만, 여기서 display: inline-block을 넣어주면,

span이 인라인이면서도 블럭 속성을 가지겠다는 의미가 되어서,

div{
    border: 2px solid red;
    width: 300px;
    height: 50px;
}

span{
    display: inline-block;
    border: 2px solid blue;
    width: 300px;
    height: 50px;
}

 

이렇게 결과가 나온다.

 

 

----------------------------------------------------------------------------------------------------------------

 

none | 디스플레이(표시)하지 않는다. |

 

화면에는 존재하지 않지만, 개발자 도구에서는 존재한다.

div{
    border: 2px solid red;
    display: none;
}

 

 

==================================================================

 

 

 


 

 

# border 속성

 

-인라인 레벨이나 블럭 레벨의 크기 만큼 테두리를 생성해준다.

-border 속성을 사용하게되면 요소가 차지하고있는 영역에 테두리를 그릴 수 있다.
-border 속성에는 속성값으로 테두리의 모양,  두께, 색상을 지정할 수 있다.

 

    <body>
        <div>div는 블럭 레벨 요소입니다.</div>
        <span>span 태그는 인라인 요소입니다.</span>       
    </body>
span{
    border-style: solid;
    border-radius: 2px;
    border-color: blue;
}

 

 

-위의 코드를 한 줄로 정렬해서 아래처럼 사용이 가능하다.

-순서는 바껴도 상관 없음

div{
    border: 2px solid red;
}

 

border : 선의 굵기 선 스타일 선 색상;

선 스타일 :  soild(실선), double(두 줄), dotted(점 선)

 

 


 

 

 

##박스 모델

 

# Box-model

-브라우저가 요소를 랜더링할 때 각각의 요소는 기본적으로 사각형 형태로 영역을 차지하게된다.
-이 영역을 박스라고하며 CSS는 박스의 크기, 위치, 속성을 결정할 수 있다.

-border-style : 테두리의 스타일을 지정할 수 있다.
 # solid
 # dashed
 # dotted
 # double
 # inset
 # outset
 # groove

-border-color : 테두리의 색상을 지정할 수 있다.
 # 키워드
 # RGB
 # RGBA
 # RGB함수

-border-width : 테두리의 굵기를 지정할 수 있다.
 # px

 

 .box{
    width: 200px;
    height: 200px;
    border-color: orange;
    border-width: 5px;

    border-style: solid;
    border-style: dashed;
    border-style: dotted;
    border-style: double;
    border-style: inset;
    border-style: outset;
    border-style: groove;
 }

 

 .box{
    width: 200px;
    height: 200px;
    border: 2px soild dodgerblue;

    border-top: 5px dotted red;
    border-bottom: 3px dashed blue;
    border-right: 2px soild green;
    border-left: 4px double orange;
}

 

 .box{
    width: 200px;
    height: 200px;
    border: 2px solid dodgerblue;

    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;
}

 .box{
    width: 200px;
    height: 200px;
    border: 2px solid dodgerblue;

    border-radius: 50px;
}

-한 줄로도 모서리를 둥글게 가능하다.

 

 

-radius를 일일이 넣어줄 필요없고, 해당 번호를 기억하자.

.box4{
    border-radius: 0px;
    border-top-left-radius: 50px;
    border-bottom-right-radius: 50px;
}
.box4{
    border-radius: 50px 0px 50px 0px
}

 

 

-이런 도형들도 가능해요

    <body>
        <div class="box1"><strong>box1</strong></div>     
        <div class="box2"><strong>box2</strong></div>     
        <div class="box3"><strong>box3</strong></div>     
        <div class="box4"><strong>box4</strong></div>
        <br>     
        <div class="box5"><strong>box5</strong></div>     
        <div class="box6"><strong>box6</strong></div>     
        <div class="box7"><strong>box7</strong></div>     
        <div class="box8"><strong>box8</strong></div>  
    </body>
div{
    width: 200px;
    height: 200px;
    background-color: dodgerblue;
    border: 10px solid orange;
    border-radius: 15px;
    display: inline-block;
    margin: 10px;
    text-align: center;
    line-height: 200px;
    color: white;
}

.box2{
    border-radius: 40px;
}

.box3{
    border-radius: 200px;
}

.box4{
    border-radius: 50px 0px 50px 0px
}

.box5{
    border-radius: 200px 0px 0px 0px
}

.box6{
    border-radius: 200px 200px 200px 0px;
}

.box7{
    border-radius: 200px 0px 200px 0px
}

.box8{
    border-radius: 200px 200px 0px 0px;
}

-일일이 도형을 설정해줄 필요 없이, 처음에는 div로 전체 도형 스타일을 설정해준다.

-각각의 세부사항은 class 선택자를 사용해서 변경해준다.

 

반응형

'CSS↗' 카테고리의 다른 글

CSS 요소의 배경 설정(background)  (0) 2024.04.08
CSS padding, margin / 박스 크기 계산  (0) 2024.04.08
CSS 텍스트 관련 속성  (0) 2024.04.05
CSS 선택자 1  (0) 2024.04.05
CSS란 / HTML에 CSS 입히기  (0) 2024.04.05