-
개발자가 작성하는 CSS ⇒ Author CSS
-
브라우저 기본 글꼴 크기 등 사용자가 지정하는 것 ⇒ User CSS
-
기본적으로 있는 스타일(a 태그는 파란색) ⇒ Browser (user agent) CSS
-
CSS 우선 순위 : IMPORTANCE > SPECIFICITY > SOURCE ORDER(위~아래)
-
Importance 순위
- User : important 선언
- Author : !important
- Autor CSS
- User CSS
- Default browser
-
Specificity 순위
- 인라인 스타일
- ID
- class, pseudo-class(가상 클래스, :root, :first-child :not(), :hover), attribute
- element, pseudo-elements(::after, ::first-letter 등)
parse CSS - 2. value값 처리
- value 값 선언
- 캐스케이드 (충돌하는 CSS 해결)
- 구체화된 value 값
- Computed value (converting relative values to absolute)
- Used value (final calculations, based on layout)
- Actual value (browser and device restrictions)
- CSS 엔진이 상대 단위를 px로 변환하는 법
- % ⇒ n% * 부모 요소의 크기
- em(부모 요소 or 현재 요소 폰트 크기 기반)
- em(font) ⇒ n * 부모 요소의 폰트 사이즈
- em(lengths) ⇒ n * 현재 요소의 폰트 사이즈
- rem(root의 폰트 크기 기반) ⇒ n* root의 폰트 사이즈
parse CSS - 3.상속
.parent {
font-size: 20px;
line-height: 150%;
}
.child {
font-size: 25px;
}
여기서 .child의 line-height의 값은 20 * 150 = 30px이다.
속성이 상속될 때는 부모요소에서 계산된 값이 넘겨진다.
px to rem
- px에서 rem으로 바꾸는 법: root font-size는 어디서 설정하냐 : CSS 파일에서 html {font-size: };
- rem 계산하기 귀찮을 때 팁! root font-size를 62.5%로 한다