Specyfikacja Kaskadowych arkuszy stylów, poziom 2, poprawka 1 (CSS 2.1)
Rekomendacja kandydująca W3C z 8 września 2009 r.
- Niniejsza wersja:
- http://www.w3.org/TR/2009/CR-CSS2-20090908
- Najnowsza wersja:
- http://www.w3.org/TR/CSS2
- Poprzednie wersje:
- http://www.w3.org/TR/2009/CR-CSS2-20090423
- http://www.w3.org/TR/2008/REC-CSS2-20080411/
- Redaktorzy:
- Bert Bos <bert @w3.org>
- Tantek Çelik <tantek @cs.stanford.edu>
- Ian Hickson <ian @hixie.ch>
- Håkon Wium Lie <howcome @opera.com>
Prosimy o zapoznanie się z erratą do tego dokumentu.
Niniejszy dokument jest także dostępny w następujących nienormatywnych formatach: czysty tekst, plik tar gzip, plik zip, PostScript gzip, PDF. Zobacz również listę tłumaczeń.
Copyright © 2009 W3C® (MIT, ERCIM, Keio), All Rights Reserved. Mają zastosowanie następujące zasady W3C: odpowiedzialność, znak towarowy, używanie dokumentu.
Niniejszy dokument jest tłumaczeniem oryginalnego dokumentu i może zawierać błędy wynikające z tłumaczenia. W przypadkach rozbieżności między tym dokumentem, a wersją angielską, obowiązuje wersja angielska dokumentu.
Streszczenie
Niniejsza specyfikacja definiuje Kaskadowe Arkusze Stylów, poziom 2, poprawka 1 (CSS 2.1). CSS 2.1 to język arkuszy stylów umożliwiający autorom i użytkownikom dołączanie definicji stylów (np. kroju pisma i odstępów) do dokumentów strukturalnych (np. dokumentów HTML i aplikacji XML). Dzięki oddzieleniu warstwy prezentacyjnej od treści dokumentów, język CSS 2.1 pozwala uprościć proces tworzenia stron internetowych i zarządzanie nimi.
Język CSS 2.1 bazuje na języku CSS 2 [CSS2], który z kolei bazuje na CSS 1 [CSS1]. Język ten umożliwia tworzenie arkuszy stylów przeznaczonych dla określonych środków przekazu, dzięki czemu autorzy mogą tworzyć dokumenty, których prezentacja jest dostosowana do przeglądarek wizualnych, urządzeń odsłuchowych, drukarek, urządzeń posługujących się alfabetem Braile’a, urządzeń kieszonkowych itd. Ponadto obsługuje pozycjonowanie treści, definiowanie układu tabel, internacjonalizację oraz pozwala kontrolować niektóre cechy interfejsu użytkownika.
W specyfikacji CSS 2.1 poprawiono kilka błędów znalezionych w CSS 2 (do najważniejszych poprawek należą: ponowne zdefiniowanie wysokości i szerokości bezwzględnie pozycjonowanych elementów, zwiększenie kontroli nad atrybutem HTML „style” oraz ponowne obliczenie własności ‚clip’) oraz dodano pewną liczbę najbardziej oczekiwanych i szeroko implementowanych funkcji. Jednak przede wszystkim CSS 2.1 stanowi ilustrację zastosowań technologii CSS: zawiera wszystkie własności CSS, które w momencie publikowania rekomendacji były zaimplementowane i powszechnie obsługiwane.
Specyfikacja CSS 2.1 powstała na bazie specyfikacji CSS 2 i zastępuje ją. Niektóre części specyfikacji CSS 2 pozostały w CSS 2.1 niezmienione, niektóre zmodyfikowane a część została usunięta. Usunięte części mogą zostać wykorzystane w przyszłości w CSS 3. Przyszłe specyfikacje powinny odnosić się do CSS 2.1 (jeśli nie dotyczą funkcji z CSS 2, które zostały pominięte w CSS 2.1 - wówczas odwołania do specyfikacji CSS 2 powinny ograniczać się tylko do tych funkcji lub (preferowane rozwiązanie) odwoływać się do takich funkcji w odpowiednim module CSS 3, który je zawiera).
Status niniejszego dokumentu
W niniejszej sekcji opisano status dokumentu w chwili jego publikacji. Może on zostać zastąpiony kolejnymi dokumentami. Aktualna lista publikacji W3C oraz najnowsza wersja tego raportu technicznego znajdują się na stronie W3C technical reports index at http://www.w3.org/TR/.
Jest to rekomendacja kandydująca W3C, co oznacza, że dokument ten został starannie zrecenzowany i W3C zaleca jego implementowanie. Pozostanie on rekomendacją kandydującą przynajmniej do 23 października 2009 r. Zanim dokument ten uzyska status proponowanej rekomendacji, zostanie udostępniony pakiet testowy oraz raport implementacyjny.
Opublikowanie dokumentu jako rekomendacji kandydującej nie oznacza zatwierdzenia go przez W3C. Jest to wstępna wersja, która w każdej chwili może zostać zaktualizowana, zastąpiona inną wersją lub stać się przestarzała. Nie należy cytować fragmentów tego dokumentu bez zaznaczenia, że nie został on jeszcze ukończony.
Preferowanym miejscem do toczenia dyskusji na temat tej specyfikacji jest publiczna lista dyskusyjna (archiwum) [email protected] (zobacz instrukcje). W temacie wiadomości e-mail wysyłanej do tej listy dyskusyjnej należy umieścić tekst [CSS21], np.: [CSS21] ?streszczenie komentarza (po angielsku)?
W dokumencie tym uwzględniono poprawki błędów odkrytych podczas implementacji poprzedniej wersji. Niektóre poprawki dotyczą usunięcia dwuznaczności lub zmieniają zachowania w krańcowych przypadkach. Dlatego należy się spodziewać, że przed ukazaniem się proponowanej rekomendacji ukaże się jeszcze jedna wersja robocza w celu zdobycia większej ilości komentarzy.
Dokument ten jest wynikiem pracy grupy roboczej ds. CSS (część działalności ds. stylów).
Prace nad tym dokumentem zostały przeprowadzone zgodnie z zasadami patentowymi W3C z dnia 5 lutego 2004 r.. W3C utrzymuje publiczną listę wszystkich informacji patentowych ujawnionych w związku z rezultatami prac grupy. Na stronie tej znajdują się także informacje na temat ujawniania patentów. Osoba posiadająca wiedzę na temat patentu, który jej zdaniem zawiera podstawowe roszczenia musi ujawnić te informacje zgodnie z ustępem 6 zasad patentowych W3C.
Kryteria zakończenia etapu rekomendacji kandydującej
Aby można było zakończyć etap rekomendacji kandydującej (RK) niniejszej specyfikacji, muszą zostać spełnione następujące warunki:
-
Każda funkcja musi mieć przynajmniej dwie interoperacyjne implementacje. Na potrzeby tego warunku zdefiniowane zostaną następujące pojęcia:
- funkcja
-
Rozdział lub podrozdział specyfikacji.
- interoperacyjność
-
Pomyślne przejście odpowiednich przypadków testowych w pakiecie testów lub, jeśli implementacja nie jest przeglądarką internetową, innych równoważnych testów. Jeśli ma zostać użyta taka aplikacja kliencka, to aby można było mówić o interoperacyjności dla każdego testu w pakiecie powinien zostać utworzony odpowiednik, Ponadto, aby aplikacja kliencka została uznana za interoperacyjną, muszą zostać przedstawione przynajmniej dwie inne aplikacje, które również przejdą te testy pomyślnie. Testy te muszą zostać udostępnione publicznie, aby możliwe było ich zrecenzowanie przez specjalistów.
- implementacja
-
Aplikacja kliencka, która:
- implementuje funkcję;
- jest dostępna (tzn. ogólnodostępna do pobrania lub dostępna za pośrednictwem jakiegoś publicznego punktu sprzedaży); Jest to wymóg wykaż, że tak jest.
- jest dostarczana (tzn. nie może to być np. niedokończona, prywatna czy nieoficjalna wersja).
- nie jest eksperymentalna (tzn. jest przeznaczona dla szerokiego grona odbiorców i może być używana codziennie).
Okres rekomendacji kandydującej musi trwać przynajmniej sześć miesięcy. Warunek ten zapewnia wystarczającą ilość czasu na znalezienie wszystkich poważnych błędów.
Jeśli implementacje będą pojawiać się powoli, okres RK (rekomendacji kandydującej) będzie przedłużany.
Jeśli do końca okresu RK nie ukażą się przynajmniej dwie interoperacyjne implementacje funkcji, których nie było w CSS 1, zostaną one usunięte (co spowoduje zmniejszenie listy wszystkich funkcji wspomnianych powyżej).
Ponadto zostaną usunięte te funkcje, dla których do końca okresu RK nie ukażą się wystarczające i odpowiednie testy (wg uznania grupy roboczej).
Funkcje zagrożone
Aktualnie grupa robocza zidentyfikowała kilka funkcji, które są słabo zaimplementowane w aplikacjach klienckich. Dlatego istnieje poważne ryzyko, że na zakończenie okresu RK specyfikacji CSS 2.1 zostaną one usunięte. (Wszelkie tego rodzaju zmiany powodują zwrot specyfikacji do fazy ostatniego wezwania do zgłaszania komentarzy.) Jeśli implementatorzy chcą, aby funkcje te pozostały w specyfikacji, powinni jak najszybciej je zaimplementować lub poprawić błędy w istniejących implementacjach.
- Nowe wartości własności ‚list-style-type’
-
- ‚armenian’
- ‚georgian’
- ‚lower-greek’
Zamiast tego implementatorzy mogą przejrzeć listy CSS 3, w których znajdują się szczegółowe definicje tych i wielu innych wartości niedostępnych w CSS 1. [CSS3LIST]
- Obsługa wielu atrybutów identyfikatora dla selektora identyfikatora
-
Ponieważ nie oczekuje się od implementacji obsługi wielu identyfikatorów dla jednego elementu w niedalekiej przyszłości, funkcja ta może mieć charakter informacyjny. Pozostanie ona w charakterze normatywnym w specyfikacji W3C selektorów. (Podrozdział 5.9.)
- Algorytm automatycznego układu tabeli
-
Dane wejściowe do tego sugerowanego (nienormatywnego) algorytmu automatycznego układu tabel są ograniczone do (1) szerokości bloku zawierającego oraz (2) zawartości i własności tabeli i jej elementów dzieci. Ograniczenia te mogą zostać zaostrzone.
- Cudzysłowy
-
Własność ‚quotes’ i słowa kluczowe ‚open-quote’, ‚close-quote’, ‚no-open-quote’ oraz ‚no-close-quote’ mogą zostać usunięte.
- Element BODY w języku XHTML
-
Własności ‚overflow’ i ‚background’ działają dla elementu BODY w HTML inaczej niż dla innych elementów. Możliwe, że to wyjątkowe traktowanie elementu BODY w HTML zostanie rozszerzone na element BODY w XHTML.
Krótki spis treści
- 1 Specyfikacja CSS 2.1 — informacje
- 2 Wprowadzenie do CSS 2.1
- 3 Zgodność: wymagania i zalecenia
- 4 Składnia i podstawowe typy danych
- 5 Selektory
- 6 Przypisywanie własnościom wartości, kaskadowość i dziedziczenie
- 7 Typy mediów
- 8 Model polowy
- 9 Model formatowania wizualnego
- 10 Model formatowania wizualnego — szczegóły
- 11 Efekty wizualne
- 12 Treść generowana, numerowanie automatyczne i listy
- 13 Media stronicowane
- 14 Kolory i tło
- 15 Własności pisma
- 16 Tekst
- 17 Tabele
- 18 Interfejs użytkownika
- Dodatek A. Słuchowe arkusze stylów
- Dodatek B. Bibliografia
- Dodatek C. Zmiany
- Dodatek D. Domyślny arkusz stylów dla HTML 4
- Dodatek E. Szczegółowy opis kontekstów stosowych
- Dodatek F. Tabela wszystkich własności
- Dodatek G. Gramatyka CSS 2.1
- Dodatek I. Indeks
Pełny spis treści
- 1 Specyfikacja CSS 2.1 — informacje
- 2 Wprowadzenie do CSS 2.1
- 3 Zgodność: wymagania i zalecenia
- 4 Składnia i podstawowe typy danych
- 5 Selektory
- 6 Przypisywanie własnościom wartości, kaskadowość i dziedziczenie
- 7 Typy mediów
- 8 Model polowy
- 8.1 Wymiary pola
- 8.2 Przykład marginesów, dopełnienia i obramowania
- 8.3 Własności marginesów: ‚margin-top’, ‚margin-right’, ‚margin-bottom’, ‚margin-left’ oraz ‚margin’
- 8.4 Własności dopełnienia: ‚padding-top’, ‚padding-right’, ‚padding-bottom’, ‚padding-left’ oraz ‚padding’
- 8.5 Własności obramowania
- 8.5.1 Szerokość obramowania: ‚border-top-width’, ‚border-right-width’, ‚border-bottom-width’, ‚border-left-width’ oraz ‚border-width’
- 8.5.2 Kolor obramowania: ‚border-top-color’, ‚border-right-color’, ‚border-bottom-color’, ‚border-left-color’ oraz ‚border-color’
- 8.5.3 Styl obramowania: ‚border-top-style’, ‚border-right-style’, ‚border-bottom-style’, ‚border-left-style’ oraz ‚border-style’
- 8.5.4 Własności zbiorcze obramowania: ‚border-top’, ‚border-right’, ‚border-bottom’, ‚border-left’ oraz ‚border’
- 8.6 Model polowy dla elementów liniowych w kontekście dwukierunkowym
- 9 Model formatowania wizualnego
- 9.1 Wprowadzenie do modelu formatowania wizualnego
- 9.2 Kontrolowanie generowania pól
- 9.3 Systemy pozycjonowania
- 9.4 Układ normalny
- 9.5 Elementy pływające
- 9.6 Pozycjonowanie bezwzględne
- 9.7 Zależności między własnościami ‚display’, ‚position’ i ‚float’
- 9.8 Porównanie normalnego układu, układu elementów pływających oraz pozycjonowania bezwzględnego
- 9.9 Prezentacja warstwowa
- 9.10 Orientacja tekstu: własności ‚direction’ i ‚unicode-bidi’
- 10 Model formatowania wizualnego — szczegóły
- 10.1 Definicja bloku zawierającego
- 10.2 Szerokość treści: własność ‚width’
- 10.3 Obliczanie szerokości i marginesów
- 10.3.1 Elementy śródliniowe niezastępowane
- 10.3.2 Elementy śródliniowe zastępowane
- 10.3.3 Elementy blokowe niezastępowane w układzie normalnym
- 10.3.4 Elementy blokowe zastępowane w układzie normalnym
- 10.3.5 Elementy pływające niezastępowane
- 10.3.6 Elementy pływające zastępowane
- 10.3.7 Elementy niezastępowane pozycjonowane bezwzględnie
- 10.3.8 Elementy zastępowane pozycjonowane bezwzględnie
- 10.3.9 Elementy blokowo-śródliniowe niezastępowane w układzie normalnym
- 10.3.10 Elementy blokowo-śródliniowe zastępowane w układzie normalnym
- 10.4 Szerokość minimalna i maksymalna: ‚min-width’ i ‚max-width’
- 10.5 Wysokość treści: własność ‚height’
- 10.6 Obliczanie wysokości i marginesów
- 10.6.1 Elementy śródliniowe niezastępowane
- 10.6.2 Elementy śródliniowe zastępowane, elementy blokowe zastępowane w układzie normalnym, elementy blokowo-śródliniowe zastępowane w układzie normalnym oraz elementy pływające zastępowane
- 10.6.3 Elementy blokowe niezastępowane w układzie normalnym, gdy wartość własności ‚overflow’ wynosi ‚visible’
- 10.6.4 Bezwzględnie pozycjonowane elementy niezastępowane
- 10.6.5 Bezwzględnie pozycjonowane elementy zastępowane
- 10.6.6 Skomplikowane przypadki
- 10.6.7 Automatyczna wysokość dla głównego kontekstu formatowania blokowego
- 10.7 Minimalna i maksymalna wysokość: ‚min-height’ i ‚max-height’
- 10.8 Obliczanie wysokości linii: własności ‚line-height’ i ‚vertical-align’
- 11 Efekty wizualne
- 12 Treść generowana, numerowanie automatyczne i listy
- 13 Media stronicowane
- 14 Kolory i tło
- 15 Własności pisma
- 15.1 Wprowadzenie
- 15.2 Algorytm dopasowywania fontów
- 15.3 Rodzina fontów: własność ‚font-family’
- 15.4 Odmiany stylistyczne kroju pisma: własność ‚font-style’
- 15.5 Małe litery: własność ‚font-variant’
- 15.6 Grubość pisma: własność ‚font-weight’
- 15.7 Stopień pisma: własność ‚font-size’
- 15.8 Własność zbiorcza pisma: własność ‚font’
- 16 Tekst
- 17 Tabele
- 17.1 Wprowadzenie do tabel
- 17.2 Model tabel CSS
- 17.3 Kolumny
- 17.4 Tabele w modelu formatowania wizualnego
- 17.5 Układ wizualny zawartości tabeli
- 17.6 Obramowanie
- 18 Interfejs użytkownika
- Dodatek A. Słuchowe arkusze stylów
- Dodatek B. Bibliografia
- Dodatek C. Zmiany
- Dodatek D. Domyślny arkusz stylów dla HTML 4
- Dodatek E. Szczegółowy opis kontekstów stosowych
- Dodatek F. Tabela wszystkich własności
- Dodatek G. Gramatyka CSS 2.1
- Dodatek I. Indeks









Wysyłam...