CSS(종속형 스타일 시트)는 HTML이나 XML로 작성된 문서가 화면, 종이, 음성 등 여러 매체에서 어떻게 표시될지를 기술하는 스타일 시트 언어이다.[1] 문서의 콘텐츠와 표현을 분리하므로 같은 HTML 구조에 서로 다른 스타일을 적용할 수 있다.[4]
1. 개요
2. CSS 규칙의 구성과 적용
3. 브라우저의 문서 렌더링 과정
브라우저는 HTML을 불러와 메모리 안의 문서 표현인 DOM으로 변환한 뒤, 문서에 연결된 CSS 같은 리소스를 가져온다.[2] 그런 다음 CSS 선택자를 바탕으로 적용할 규칙을 DOM 노드에 연결해 렌더 트리를 구성한다.[2]
렌더 트리는 표시할 구조로 배치되고, 마지막에 화면에 그려진다.[2] 이 과정은 브라우저가 페이지를 처리하는 방식을 단순화한 설명이며, 실제 처리 방식은 브라우저마다 다를 수 있다.[2]
브라우저가 모르는 속성이나 값을 만나면 해당 선언을 건너뛰고 다음 선언을 처리한다.[2] 선택자를 이해하지 못하면 그 선택자가 포함된 규칙 전체를 무시하고 다음 규칙으로 넘어간다.[2]
4. 종속과 상속 및 기본 스타일
5. 미디어 쿼리와 장치별 표현
미디어 쿼리는 사용자 에이전트나 출력 장치, 주변 환경의 특성에 따라 스타일을 적용하는 조건이다.[3] 예를 들어 @media (hover: hover)는 주 입력 방식으로 요소 위에 호버할 수 있는 환경을 조건으로 삼는다.[3]
뷰포트 너비 같은 범위 조건은 min-·max- 접두사나 범위 비교 구문으로 지정할 수 있다.[3] 예를 들어 @media (max-width: 1250px)는 뷰포트 너비가 1250px 이하일 때 적용되며, @media (width <= 1250px)로도 표현할 수 있다.[3]
미디어 기능에는 범위형과 이산형이 있다.[3] orientation은 landscape 또는 portrait 값을 가지므로, @media print and (orientation: portrait)처럼 세로 방향의 인쇄 조건을 지정할 수 있다.[3]
6. CSS 명세의 모듈 구조
7. 관련 문서
- HTML
- DOM
- 미디어 쿼리
- 반응형 레이아웃