CSS:dziedziczenie
z Mozilla Developer Center, polskiego centrum programistów Mozilli.
Spis treści |
[edytuj] Podsumowanie
W definicji każdej własności CSS określono, czy jest ona domyślnie dziedziczona ("Dziedziczona: tak") czy nie ("Dziedziczona: nie"). Ma to na celu kontrolę tego, co się wydarzy, gdy nie określi się wartości dla własności danego elementu.
[edytuj] Własności dziedziczone
Jeśli nie określi się wartości dla własności dziedziczonej danego elementu, to pobrana zostanie wartość wyliczona z własności jego przodka. Tylko nadrzędny element dokumentu pobiera wartość początkową określoną w podsumowaniu własności.
Typowym przykładem własności dziedziczonej jest własność . Określmy styl:
color
p { color: green }
i zaznaczenie
<p>Ten akapit zawiera <em>wyróżniony tekst</em> w sobie.</p>
fraza "wyróżniony tekst" pojawi się na zielono, ponieważ element em odziedziczył wartość własności color z elementu p. Nie otrzymuje wartości początkowej własności (którą jest kolor używany dla elementu głównego, kiedy strona nie określa koloru).
[edytuj] Własności niedziedziczone
Kiedy wartość własności niedziedziczonej (czasami nazywana reset property w kodzie Mozilli) nie jest wyszczególniona w elemencie, wtedy ten element otrzymuje wartość początkową tej własności (jak określono w podsumowaniu własności).
Typowym przykładem niedziedziczonej własności jest border. Następujące reguły stylu:
p { border: medium solid }
oraz znaczniki
<p>Ten akapit zawiera w sobie <em>wyróżniony tekst</em>.</p>
sprawiają, że słowa "wyróżniony tekst" nie będą miały obramowania (ponieważ wartością początkową własności border-style jest none).
[edytuj] Uwagi
Słowo kluczowe inherit pozwala autorom jednoznacznie zdefiniować dziedziczenie. Działa to zarówno dla własności dziedziczonych, jak i niedziedziczonych.