Kaskadowość i dziedziczenie

Plansza interaktywna luty 2021

URL:
http://www.plotkarka.eu/PI/css3-cascade/
Autor:
Radosław Kowaluk

Importowanie arkuszy stylów

Reguła @import pozwala importować reguły stylów z innych arkuszy stylów. Reguły @import muszą znajdować się na samym początku arkusza stylów, w elemencie style lub zewnętrznym pliku css (reguła @charset, musi być pierwszą w arkuszu stylów, jeśli istnieje).

Reguła @import
@import [url|string] media-query-list?;
url
identyfikator internetowy w formie url('nazwa pliku')
string
identyfikator internetowy w formie nazwa pliku
media-query-list
określa listę mediów dla importowanego arkusza stylów oraz reguły warunkowe określone w rekomendacji Typy Mediów

importowanie stylów

*) Zawartość plików:

style.css
body { color: silver; }

print.css
body { color: black; }

Właściwości skrócone

Niektóre właściwości posiadają formę skróconą. Pozwalają na określenie kilku wartości właściwości jednego obiektu. Skróconą własność ustawia wszystkie swoje właściwości podrzędne (gdy zostaną pominięte z skróconej postaci przypisana im zostanie wartość początkowa).

Definiowanie

selektor: {
właściwość: wartość1;
właściwość: wartość2;

...

właściwość: wartośćN;
}

jest równe

selektor: {
właściwość: wartość1  wartość2 ... wartośćN;
}

Właściwości skrócone

Wartość początkowa

Wartość 'initial'
* np. font:
initial;

font: initial;

Każda właściwość ma wartość początkową, która staje się określoną wartością, gdy kaskada i dziedziczenie nie daje wartości. Ponadto, wartość początkowa może być wskazana przez słowo kluczowe "initial", które akceptują wszystkie właściwości.

Kaskadowość

Celem kaskadowości jest znalezienie jednej deklaracji wśród zestawu, które mają zastosowanie dla danego elementu. Aplikacje klienckie sortują deklaracje według następujących kryteriów, w kolejności ważności:

Wartości initial

Dziedziczenie

Wartość 'inherit'
* np. border:
inherit;

border: inherit;

Każda własność może również przyjąć wartość 'inherit'. Oznacza to, że dla danego elementu własność ta przyjmuje taką samą wartość, co ta sama własność jego rodzica. Wartości 'inherit' można używać do wzmacniania dziedziczenia wartości lub z własnościami, które normalnie nie są dziedziczne.

Wartość 'inherit'

Dyrektywa !important
* np. color:
np. silver !important;

color: silver !important;

Każda własność może również przyjąć wartość  z dyrektywą !important, która zmienia kolejność w kaskadzie (zwiększa wagę, odwraca kolejność pierwszeństwa).

Właściwość all (przywracanie wszystkich właściwości) CSS3
all:
initial inherit unset

all:initial;

all:inherit;

all:unset;

Dyrektywa !important

Ważność

Arkusze stylów mogą pochodzić z trzech różnych źródeł: autor, użytkownik oraz aplikacja kliencka.

Sortowanie według ważności (normalna lub ważna) i pochodzenia (autor, użytkownik lub aplikacja kliencka). W kolejności rosnącej:

  1. deklaracje aplikacji klienckiej,
  2. normalne deklaracje użytkownika,
  3. normalne deklaracje autora,
  4. ważne deklaracje autora,
  5. ważne deklaracje użytkownika.

Resetowanie stylu