현재 번역은 완벽하지 않습니다. 한국어로 문서 번역에 동참해주세요.
CSS3는 Cascading Style Sheets(CSS) 언어의 가장 최신 버전이고 CSS2.1을 상속하는 것을 목표로 합니다. CSS3는 개발자들이 오랫동안 기다려온 새로운 기능들을 지원하게 되었습니다. 다중열(multi-columns), 유동적인 상자(flexible box), 격자 배치(grid layouts) 뿐만 아니라 둥그런 모서리(rounded corners), 그림자( shadows) , 부드러운 색의 변이(gradients) , 변이(transitions), 움직임(animations) 등도 지원합니다. 실험적인 부분(experimental parts)은 브라우저 공급자(vender)의 구현에 따라 다를 수 있고 미래에 문법이나 의미가 변할 수 있습니다. 따라서 환경에 따라 해당 스펙을 사용하는 것을 피하거나, 사용하더라도 매우 신중히 사용해야합니다.
모듈과 표준화 과정(Modules and the standardization process)
2002년 8월부터 2011년 6월까지 CSS Level2가 권장(Recommendation)단계에 이르기 까지 총 9년이 걸렸습니다. 이는 몇몇 부차적인 기능들이 전체 명세(specification)의 진행을 더디게 만들었기 때문입니다. W3C의 CSS Working Group은 문제를 일으키는 몇몇 기능을 제외한 나머지 기능들의 표준화 작업을 보다 빠르게 진행하기 위하여 Beijing doctrine에 따라 CSS를 보다 작은 컴포넌트 단위로 나눴고, 이를 모듈(module)이라 부릅니다. 현재 각각의 모듈은 서로 독립적으로 표준화 과정을 거치고 있습니다. 이미 몇몇 모듈은 W3C Rocommendations 에 이르렀으나, 나머지는 여진히 Working Drafts 단계에 머물러 있습니다. 또한 새로운 요구사항(needs)이 발생할 때 마다 계속해서 새로운 모듈이 추가되고 있습니다.
공식적으로 CSS3 자체 표준은 존재하지 않습니다. 각각의 모듈이 독립적으로 표준화 되고 있고, 표준 CSS는 모듈을 통해 CSS2.1을 수정하여 상속(extends)하는 것으로 구성되어있서 항상 같은 level number를 갖는 것은 아닙니다. 특정 시점의 CSS2.1과 완성된 모듈들로 구성된 CSS표준 스냅샷을 정의할 수 있습니다. W3C는 주기적으로 이런 스냅샷을 발표하고 있습니다. (2007 / 2010)
아직까지 lever 3보다 높은 level을 가진 모듈은 없지만 곧 생길 것입니다. Selector 4나 CSSborder 4, Background 4와 같은 몇몇 모듈은 Working Draft가 공개된적은 없지만 이미 Editor's Draft는 작성되어 있습니다.
CSS 모듈의 상태(CSS modules status)
안정적인 모듈(Stable modules)
몇개의 모듈은 이미 상당히 안정적이고, CSSWG의 recommendation 3단계(Candidate Recommendation, Propesed Recommendation, Recommendation) 중 하나에 도달했습니다. 이 모듈들은 별도의 과정없이도 꽤 안정적으로 사용할 수 있습다. 하지만 몇몇 기능은 여전히 Candidate Recommendation 단계에 머물러 있습니다.
모듈들은 명세(spec)의 핵심이 되는 CSS2.1을 수정, 상속하고 있습니다. 이것을 포함한 모듈들이 CSS3 명세의 스냅샷이 됩니다.
CSS Color Module Level 3 | Recommendation since June 7th, 2011 |
더이상 사용해선 안되는 system-color 키워드를 deprecates 합니다. |
Selectors Level 3 | Recommendation since September 29th, 2011 |
다음이 추가되었습니다.
|
아직 Working Draft로 공개되진 않았지만, 셀렉터 명세의 다음 버전이 이미 진행중입니다.
CSS Namespaces Module | Recommendation since September 29th, 2011 |
CSS qualified name의 개념을 정의하여 XML Namespaces에 대한 지원이 추가됩니다. 이를 위해 ' |
Media Queries | Recommendation since June 19th, 2012 |
이전의 media type ( 미디어 쿼리는 CSS 문서에서만 사용되는 것이 아니라 |
이 명세의 다음 버전이 진행중입니다. 사
용자 에이전트의 입력 메소드에 대해 잘 맞는 웹사이트를 제작할 수 있게 해줄hover나
pointerd와 같은 새로운 미디어 기능을 포함하고 있습니다.
script
media features를 이용해 EcmaScript에서도 감지할 수 있도록 제안되었습니다.
CSS Style Attributes | Recommendation since November 7th, 2013 |
HTML style 전역 특성(global attribute)의 내용(contents)에 관한 문법을 공식적으로 정의합니다. |
CSS Backgrounds and Borders Module Level 3 | Candidate Recommendation |
다음이 추가되었습니다.
|
아직 Working Draft의 초안이 공개되진 않았지만 CSS4 Backgrounds 와 Borders 명세의 다음 버전이 이미 진행중입니다. 테두리를 잘라내는 기능(CSS border-clip
, border-clip-top
, border-clip-right
, border-clip-bottom
와 border-clip-left
프로퍼티를 사용)이나 테투리의 모서리 모양을 조절하는 기능 (CSS border-corner-shape
프로퍼티를 사용)을 추가할 계획입니다.
CSS Multi-column Layout Module | Candidate Recommendation |
CSS columns , column-count , column-fill , column-gap , column-rule , column-rule-color , column-rule-style , column-rule-width , column-span , column-width , break-after , break-before , break-inside 를 이용해 쉽게 다중 열 레이아웃을 만들 수 있습니다. |
CSS Speech Module | Candidate Recommendation |
청각 포맷 모델과 사용자 에이전트의 speech-rendering에 특화된 수많은 프로퍼티를 내용으로 하는 speech 미디어 타입을 정의합니다. |
CSS Image Values and Replaced Content Module Level 3 | Candidate Recommendation |
미디어 프래그먼트를 이용해 이미지를 자를 수 있도록 다음이 추가되었습니다 :
|
CSS Image Level 3를 대체할 CSS Image Values 와 Replaced Content Level 4 는 현재 개발중에 있고 Working Draft 입니다.
CSS Values and Units Module Level 3 | Candidate Recommendation |
문법적 토큰과 원문의 정도(Precision)의해 암묵적으로 정의했던 CSS2.1의 CSS 데이터 타입을 공식적으로 정의합니다. 다음이 추가되었습니다 :
|
<ident>
,<custom-ident>같은 몇몇 정의는
CSS Values and Units Module Level 4로 미뤄졌습니다..
CSS Flexible Box Layout Module | Candidate Recommendation |
CSS display 프로퍼티에 flexbox layout과 이것을 제어할 몇몇 새 CSS 프로퍼티가 추가되었습니다 : flex , flex-align , flex-direction , flex-flow , flex-item-align , flex-line-pack , flex-order , flex-pack , and flex-wrap . |
CSS Conditional Rules Module Level 3 | Candidate Recommendation |
스타일 시트의 몇몇 부분을 특정 조건하에 처리하기 위한 기능이 추가되었습니다. 스타일시트가 적용될 문서나 브라우저의 능력에 따라 작동하게 됩니다@media 의 하위에 들여쓰기된 앳-룰(at-rule)을 사용할 수 있고, 새로운 CSS 앳-룰인 @supports 와 새 DOM 메소드인 CSS.supports() 가 추가되었습니다. |
Unknown | Unknown |
Extends:
Adds:
Precises:
At risk: due to insufficient browser support, standardization of the |
CSS Fonts Module Level 3 | Candidate Recommendation |
Amends the CSS2.1 Font matching algorithm to be closer to what is really implemented. Adds:
|
CSS Syntax Level 3 | Candidate Recommendation |
Precises how charsets are determined; minor changes in parsing and tokenization algorithms. |
Modules in the refining phase
Specifications that are deemed to be in the refining phase are already fairly stable. Though changes are still expected, they shouldn't create incompatibilities with current implementations; they should mainly define behavior in edge cases.
CSS Basic User Interface Module Level 3 | Candidate Recommendation |
Adds:
|
An early list of what could be in the next iteration of the CSS Basic User Interface Module is available.
CSS Transitions | Working Draft |
Allows the definition of transitions effects between two properties values by adding the CSS transition , transition-delay , transition-duration , transition-property , and transition-timing-function properties. |
CSS Animations | Working Draft |
Allows the definition of animations effects by adding the CSS animation , animation-delay ,animation-direction , animation-duration , animation-fill-mode , animation-iteration-count , animation-name , animation-play-state , and animation-timing-function properties, as well as the @keyframes at-rule. |
CSS Transforms Level 1 | Working Draft |
Adds:
Note: this specification is a merge of CSS 2D-Transforms, CSS 3D-Transforms and SVG transforms. |
CSS Fragmentation Module Level 3 | Candidate Recommendation |
Defines how partitions of a Web page should happen, that is page, column breaks, and widows and orphans handling.
Adds:
|
CSS Text Level 3 | Working Draft |
Extends:
Adds:
|
A few features present in early CSS Text Level 3 draft have being postponed to the next iteration of this module .
CSS Custom Properties for Cascading Variables Module Level 1 | Working Draft |
Defines a mechanism allowing to define variables in CSS. |
Modules in the revising phase
Modules that are in the revising phase are much less stable than those in the refining phase. Often the syntax is still under scrutiny and may evolve a lot, in a non-compatible way. Alternative syntax are tested and often implemented.
CSS Writing Modes Module Level 3 | Candidate Recommendation |
Defines the writing modes of both horizontal and vertical scripts and precises how the CSS direction and unicode-bidi properties interact with the new CSS text-orientation property, and extends them where needed. |
Modules in the exploring phase
CSS Image Values and Replaced Content Module Level 4 | Working Draft |
Extends:
Adds:
|
CSS Device Adaptation | Working Draft |
Adds a new at-rule, @viewport , allowing to specify the size, zoom factor, and orientation of the viewport that is used as the base for the initial containing block. |
CSS Grid Layout | Working Draft |
Add a grid layout to the CSS display property and several new CSS properties to control it: grid , grid-area , grid-auto-columns , grid-auto-flow , grid-auto-position , grid-auto-rows , grid-column , grid-column-start , grid-column-end , grid-row , grid-row-start , grid-row-end , grid-template , grid-template-areas , grid-template-rows , and grid-template-columns . |
CSS Generated Content for Paged Media Module | Working Draft |
Adds the ability to tailor printed version of a document by allowing to control header, footer but also references tables like indexes or tables of content. |
Unknown | Unknown |
Extends the floats mechanism to define exclusion regions in any positioning scheme. Adds the notion of shapes, in which content must flows. |
CSS Lists and Counters Module Level 3 | Working Draft |
Extends the list counter mechanism so that list markers can be styled and Web developers can define new list counter schemes. |
CSS Regions Module Level 1 | Working Draft |
Defines a new mechanism allowing content to flow across, eventually non-contiguous, multiple areas called regions. |