Rozumienie selektorów
Rozdział 1.
W regułach kaskadowych arkuszy stylów selektory są „połączeniami” pomiędzy definicjami oraz znacznikami HTML-owymi, których reguły mają dotyczyć.
1. Selektory HTML-owe mają postać nazwy znacznika HTML-owego. Na przykład, H3 jest selektorem znacznika <H3>. Selektory tego rodzaju używane są do definiowania zachowania określonego znacznika HTML-owego (patrz Tworzenie reguł CSS przy pomocy selektorów HTML-owych, strona 29).
2. Selektory klas określają klasę o dowolnej podanej nazwie. Klasy są „wolnym” selektorem, który może zostać zastosowany do dowolnego znacznika HTML-owego.
Ze względu na fakt, że znaczniki tego typu mogą zostać wykorzystane w wielu znacznikach, stanowią one najbardziej wszechstronny typ selektorów (patrz Definiowanie selektorów klas, strona 30).
3. Selektory identyfikatorów działają podobnie jak selektory klas, ponieważ także mogą być wykorzystywane w dowolnych znacznikach HTML-owych. Jednak zazwyczaj selektory tego typu wykorzystywane są tylko raz w dokumencie w wybranym znaczniku HTML-owym (patrz Definiowanie selektora identyfikatora, strona 32).
■ Nie myl selektora HTML-owego z jego atrybutami. Dla przykładu, w poniższym znaczniku IMG jest selektorem, a SRC atrybutem.
<IMG SRC='obrazek.gif“>
■ Znaczniki <BR>, <FRAMESET> oraz <FRAME> nie mogą być stosowane jako selektory.
Znaczniki czy selektory - jaka jest różnica?
Selektor HTML-owy jest tekstową częścią znacznika HTML-owego, częścią, która informuje przeglądarkę o typie danego znacznika. A zatem, jeśli definiujesz selektor HTML-owy używając kaskadowych arkuszy stylów, w rzeczywistości ponownie definiujesz znacznik HTML-owy. Choć te dwa pojęcia - znacznik oraz selektor - wydają się być identyczne, to jednak są różne: jeśli użyłbyś pełnego znacznika HTML-owego w regule CSS, wraz z nawiasami i wszystkimi innymi elementami, to znacznik nie działałby poprawnie. Dlatego ważne jest, aby rozumieć, że znaczniki i selektory to dwa różne pojęcia.
■ Choć często znacznik <P> jest stosowany bez zamykającego znacznika </P>, to jednak aby można go było używać wraz z CSS, zamykający znacznik </P> musi być obecny.
26