Metody podpięcia arkusza CSS do pliku HTML

MZ | 12-06-2017 | 14:22:40

Istnieją trzy główne sposoby zainkludowania zapisów CSS do dokumentu HTML. W związku z tym istnieje także hierarchia ważności stylów. W przypadku powtarzających się selektorów to miejsce podpięcia zdecyduje o tym, który styl obowiązuje - zasada ogólna jest taka, iż to najpóźniej zdefiniowany w kodzie styl jest uważany za obowiązujący, gdyż "przesłania" poprzednie zapisy. Ale po kolei - najpierw poznajmy trzy sposoby inkludowania stylów.

1. Zewnętrzny arkusz CSS (osobny plik)

Zewnętrzny arkusz CSS dołączamy do dokumentu HTML znacznikiem znajdującym się w sekcji <head> podstrony (wartość atrybutu href musi wskazywać rzeczywisty, istniejący plik):

<link rel="stylesheet" href="arkusz.css">

To zdecydowanie najpopularniejszy sposób dołączania stylów CSS do dokumentów HTML, gdyż jest wygodny i pozwala na rozdzielenie treści witryny (tagów) od warstwy jej wyglądu (CSS). Oczywiście w tym miejscu nasz dociekliwy umysł zada sobie pytanie: skąd wzięła się ta (dziwaczna na pozór) idea rozdzielenia zawartości witryny od jej wyglądu?

Otóż ma to duży sens praktyczny – odczujemy to na przykład w momencie, gdy jednym wpisem w arkuszu CSS uda nam się zmienić kolor wszystkich przycisków w witrynie. Stało się to możliwe, gdyż wszystkie podstrony w serwisie używały tego samego arkusza stylów, podpiętego do każdej z nich. To potężny i genialny w swojej prostocie mechanizm, naturalna ewolucja od czasów gdy wygląd określało się w HTML, na przykład z wielokrotnym użyciem tagów <font>. Na szczęście te czasy bezpowrotnie minęły!

2. Znaczniki <style> w sekcji head

Kod CSS można osadzić pomiędzy tagami <style></style>, koniecznie umieszczonymi wewnątrz sekcji <head>:

<style>

#container
{
color: red;
}

</style>

Jeśli już stosujemy tagi <style></style> to zazwyczaj w celu przesłonięcia w tym konkretnym dokumencie wybranych stylów z arkusza zewnętrznego (lub ewentualnie chcemy dodać style, których tam zabrakło).

3. Style inline (wewnątrz atrybutu znacznika)

Stylizowanie inline (ang. w linii), oznacza zapisanie CSS jako watości atrybutu style wybranego tagu HTML, znajdującego się w sekcji <body>:

<div id="container" style="color:blue;"> 
Kocham Jolkę!
</div>

Takie stylizowanie stosujemy tylko doraźnie (w razie potrzeby), gdyż słabo rozdzielamy tutaj treść witryny od jej wyglądu (kod CSS został "wmieszany" w tag HTML).

Hierarchia ważności metod

Hierarchia ważności poszczególnych sposobów to: 3 > 2 > 1. Style inline przesłaniają te spomiędzy tagów <style>, zaś one przesłaniają właściwości zdefiniowane w zewnętrznym arkuszu (o ile podpięcie pliku tagiem <link> znalazło się przed tagami <style>). Jest to logiczne - style inline występują węwnątrz tagów, stąd siłą rzeczy zawsze znajdą się poniżej sekcji <head> (tagi "siedzą" przecież w <body>). I dlatego style inline są najważniejsze w hierarchii - występują najpóźniej, a więc obowiązują.

Złamanie hierarchii

Uwaga - możemy wymusić obowiązywanie jakiegoś stylu, niejako "wyjąć" jakąś właściwość CSS z tej kaskady i powiedzieć: "ta jest najważniejsza!". Dokonujemy tego stosując po spacji (a przed średnikiem) klauzulę !important (ang. ważny):

#container
{
color: red !important; /* wymuszenie koloru czerwonego */
}

Zwróćmy uwagę: teraz przeglądarka powie sobie: "Aha! Mam pominąć naturalną hierarchię i to ma być czerwone, choćby nie wiem co!". Oczywiście żeby uniknąć nawarstwiania się chaosu, nie należy przesadzać z wyróżnianiem niektórych właściwości. Czasem się to przydaje, jednak należy zachować umiar!

Zobacz także

Daj się zaskoczyć! Poniżej wylosowałem dla Ciebie pięć wpisów z całego archiwum bloga:

Komentarze

Disqus
Facebook
Pasja informatyki