참고사이트
선택자에 포함된 항목의 개수를 가중치로 표현하여 합산한 수치를 사용
1-0-0 아이디 선택자
0-1-0 클래스, 속성, 가상 클래스 선택자
0-0-1 태그(요소), 가상 요소 선택자
0-0-0 전체, 복합 선택자
0-1-0-0-0 인라인 방식
1-0-0-0-0 !important
👀 Example
#wrap #content div > input[type="text"] {
color: red;
}
#wrap 1 0 0
#content 1 0 0
div 0 0 1
> 0 0 0
input 0 0 1
[type="text"] 0 1 0
2 1 2
input[type="text"] {
color: blue;
}
input 0 0 1
[type="text"] 0 1 0
0 1 1
👉🏻 red 적용됨
#wrap #content div#Div > input[type="text"] {
color: red;
}
#wrap 1 0 0
#content 1 0 0
div#myDiv 1 0 1
> 0 0 0
input 0 0 1
[type="text"] 0 1 0
✔ 1번이 우선순위가 높고, 8번이 우선순위가 낮음
1. !important
2. 인라인 방식
3. 임베디드 방식
4. @import
5. <link>
6. <link> 안에 적용된 @import
7. 브라우저의 기본 스타일
8. 상속된 스타일
화면에 표현될 태그 요소를 배치하는 작업
태그의 컨텐츠 영역과 내부 여백(padding)을 감싸는 영역 👉🏻 컨텐츠 영역은 width와 height로 결정됨
border: border-width border-style border-color;
border: 1px soid #ccc; ➡ 두께 1px, 실선, 회색
border-width : 테두리의 두께
주로 px단위를 이용하여 설정
thin(1px, 기본값) / thick(5px) / medium(3px)
border-style : 테두리의 모양(스타일) 👉🏻 solid, hidden을 주로 사용 / dotted, dashed 정도까지 사용
border-color : 테두리의 색상
색상 단위로 설정 👉🏻 기본값은 black
box-sizing 스타일 속성 ➡ 자주 쓰게 될 것
태그 요소를 감싸고 있는 투명한 공간 👉🏻 내부 여백(padding), 외부 여백(margin)으로 구성됨
➡ top, right, left, bottom으로 구성되어 있음
padding : 테두리의 안쪽과 컨텐츠영역을 감싸고 있음
margin : 테두리의 바깥쪽으로 태그 요소 전체를 감싸고 있음
여백 설정 방법 👉🏻 padding, margin 설정 방법 같음
margin-top, margin-right, ...여백 축약 설정 방법
margin: all; : 상하좌우 모두 똑같이 설정됨margin: top&bottom left&right; : 상하, 좌우에 각각 설정margin: top left&right bottom; : 상, 좌우, 하에 각각 설정됨margin: top, right, bottom, left' : 상, 우, 하, 좌에 각각 설정됨태그요소가 배치되는 방향(흐름)을 설정하는 속성
float: left; 속성 무시(제거)float: right; 속성 무시(제거)블록 요소의 컨텐츠가 정해져 있을 때( ➡ 따로 지정하지 않으면 너비는 100%, 높이는 auto(내용물만큼)) 내용물이 컨텐츠 영역보다 크거나 많아서 넘친 부분이 발생 👉🏻 넘친 내용물을 어떻게 표현할지 설정하는 속성
상하스크롤, 수직 스크롤, vertical scroll, vscroll, scroll-y좌우 스크롤, 수평 스크롤, horizontal scroll, hscroll, scroll-x요소 자체가 화면에 표현되는 방식을 뜻함 👉🏻 요소의 자체 레이아웃의 특성을 정해놓은 것
display: block; 속성을 부여받은 요소의 레이아웃 모델
text-align 속성을 이용margin: 0 auto;를 적용✔종결 블록요소
자식태그로 다른 블록요소를 가질 수 없는 태그 👉🏻 더이상 영역을 만들지 않겠다!
인라인 요소나 텍스트만 자식요소(컨텐츠)로 가질 수 있음
<h1>~<h6>, <p>, <caption>, <dt>, <blockqoute>, <address>, ...
display: inline;을 이용해 적용할 수 있음
display: inline-block;으로 설정해서 적용