요약

  • CSS2는 1998년 5월 W3C 권고안이 됐다. CSS2.1은 널리 구현된 부분을 유지하고 정오표를 반영하며, 구현이 크게 달라진 규칙을 고치고 구현되지 않은 기능을 삭제하는 문서였다.
  • 2007년 Candidate Recommendation은 기능마다 두 개의 상호운용 구현을 요구했다. 2011년 보고서는 9,418개 테스트를 집계했고, 필수 동작 9,191개가 적어도 두 구현에서 통과했다.

종이는 코드보다 더 많은 것을 약속했다

CSS2는 종이에 적힌 약속이었다. 1998년 권고안은 다운로드 글꼴, @font-face, 글꼴 선택, 넓은 레이아웃 모델을 설명했다. 작성자에게는 자유였지만 브라우저에는 결과가 달라질 수 있는 또 하나의 규칙이었다.

2008년 수정 CSS2 페이지는 문서가 더 이상 유지되지 않는다고 밝히며 CSS2.1을 가리켰다. 개정 작업은 모든 문장을 살리는 대신 구현 경험을 필터로 삼았다.

구현이 입장권이 됐다

CSS2.1 서문은 널리 받아들여진 부분을 남기고, 정오표를 넣고, 구현이 문서와 크게 다르면 문서를 고치고, 구현되지 않았거나 CSS3로 넘어갈 기능을 빼겠다고 했다. 2007년 절차는 두 개의 상호운용 구현, 공개 테스트, 6개월 CR 기간을 요구했다. 구현이나 테스트가 부족한 기능은 빠질 수 있었다.

변경 기록에는 대가가 남아 있다. font-stretch, font-size-adjust, @font-face와 관련 글꼴 매칭 내용, text-shadow, marker-offset, 여러 목록 값이 CSS2.1에서 빠졌다. 아이디어를 금지한 것이 아니라 공통 기반으로 입증되지 않았다는 뜻이었다.

2011년 구현 보고서는 8개 운영체제에서 7개 렌더링 구현으로 만든 24개 사용자 에이전트를 시험했다. 9,418개 중 필수 동작 9,191개가 두 구현 이상에서 통과했다. 표준은 희망 목록에서 운영 경계로 바뀌었다.

W3C는 CSS2의 일부를 포기하고 안정적인 바닥을 얻었다. 상호운용성은 표준이 첫 초안보다 작아질 때 비로소 생겼다.