3.1 ⋅ Class selektor
3.2 ⋅ ID selektor
3.3 ⋅ Viacnásobné štýlové hárky
3.4 ⋅ Záver
Prehľad vlastností, ktoré v dnešnej lekcii využijete:
- text-align = zarovnanie textu v nejakom celku, napríklad odstavci. Možné hodnoty: left (doľava), center (na stred), right (vpravo) alebo justify (zarovnať do bloku).
- color = farba nejakého textového bloku, napríklad farba písma v odstavci alebo nadpise. Možné hodnoty: všetky farby, buď základné slovom alebo hexadecimálne.
- background-color = farba pozadia nejakého bloku, napríklad textového odstavca, nadpisu atď. Možné hodnoty: všetky farby, buď základné slovom alebo hexadecimálne.
Medzi webdesignérmi prevláda nepísané pravidlo, že jednotlivé vlastnosti štýlovaného (X)HTML elementu sa zapisujú v abecednom poradí – teda najprv background-color, až tak color.
Class selektor
Pomocou selektoru Class
môžete zadefinovať viacero štýlov pre
jeden (X)HTML element. Používa sa, ak
chcete viacerými štýlmi naformátovať ten element, ktorý na jednej
stránke použijete viackrát. Povedzme
napríklad, že chcete naformátovať element
<p>
tak, aby bol raz zarovnaný na stred a
raz doľava. Najprv musíte do CSS dokumentu zadefinovať možnosti
zarovnaní – pridajte tieto riadky:
.dolava {
text-align: left;
}
.nastred {
text-align: center;
}
Pred jednotlivé názvy ste pridali bodku, čo znamená, že ich môžete použiť v selektoroch class. Teraz musíte použiť atribút class v (X)HTML dokumente:
<p class="dolava">
Akýkoľvek text v tomto odstavci bude zarovnaný doľava.
</p>
<p class="nastred">
Akýkoľvek text v tomto odstavci bude zarovnaný na stred.
</p>
Teda všeobecne by sme mohli zhrnúť – ak chcete jeden element naštýlovať viacerými spôsobmi a využijete ho na stránke viackrát, použijete selektor class. Ak chcete jeden element naštýlovať viacerými spôsobmi a využijete ho na stránke len raz, použijete selektor ID. V našom prípade sme použili selektor class preto, lebo sa predpokladá, že rôzne zarovnané odseky na stránke použijete viackrát.
V praxi
Horeuvedený zápis je technicky v poriadku, no v praxi ide o akési prekombinovanie. Je nezmysel vytvárať dva typy zarovnaní textu, omnoho lepšie a jednoduchšie je nastaviť jedno zarovnanie ako defaultné a druhé ako špeciálne. Teda zarovnanie doľava nastavíme ako defaultné tým, že naštýlujeme priamo tag <p>
tak, aby zarovnával text doľava, tým pádom stačí vytvoriť už iba jeden typ zarovnania – na stred.
CSS súbor:
p {
text-align: left;
}
.nastred {
text-align: center;
}
(X)HTML dokument:
<p>
Akýkoľvek text v tomto odstavci bude zarovnaný doľava.
</p>
<p class="nastred">
Akýkoľvek text v tomto odstavci bude zarovnaný na stred.
</p>
ID selektor
Zastáva presne tú istú funkciu ako class selektor, ale používa sa iba vtedy, ak sa má daný prvok na stránke použiť len raz. Najväčšie praktické využitie nachádza pri tvorbe webdesignu pomocou CSS a tagu <div>
, o čom bude reč v nasledujúcich lekciách. Zatiaľ ho teda zrejme používať nebudete, alebo aspoň nenájdete veľmi praktické využitie.
Čo sa týka rozdielov v kóde, veľa ich oproti selektoru class nie je. V CSS súbore nebudete daný štýl začínať bodkou, ale znakom „#“ – mriežka. (Predstavte si modelovú situáciu, že na celej stránke budú všetky odstavce zarovnané doľava, len jeden jediný na stred – logicky by mal byť použitý ID selektor, aj keď v praxi to tak nie je – hlavne preto, lebo web portál pozostáva z viacerých stránok a môže sa stať, že na nejakej inej budete chcieť použiť centrovaný štýl dvakrát. Preto budete vždy na štýlovanie odstavcov používať class selektor. No je to ako modelová situácia, kým nepoznáte iné tagy, vhodná.)
#nastred {
text-align: center;
}
Zmena v kóde potom nastane takáto:
<p id="nastred">
Akýkoľvek text v tomto odstavci bude zarovnaný na stred.
Musí sa však v celom dokumente nachádzať iba raz!
A aj tak vždy budete na odstavce používať class.
</p>
Nikdy nezačínajte názov Class alebo ID definície elementu číslicou! Nefunguje to v prehliadači Mozilla Firefox a starších Mozillách.
Viacnásobné štýlové hárky
Predstavte si, že ste do CSS dokumentu napísali toto:
h3 {
background-color: green;
color: red;
text-align: left;
}
Lenže do hlavy dokumentu ste napísali niečo iné:
h3 {
background-color: yellow;
text-align: center;
}
Čo sa stalo? Do hlavy dokumentu ste nenapísali vlastnosť určujúcu farbu textu, preto sa načíta z externého CSS dokumentu – bude červená. Do súboru ste síce nastavili zarovnanie vľavo, lenže hlava dokumentu má väčšiu prioritu a preto prehliadač uprednostní zarovnanie nastred podľa hodnoty určenej v hlave (X)HTML dokumentu – text bude zarovnaný do stredu. Presne to isté sa stane s farbou pozadia – keďže hodnota uvedená v hlave stránky bude prioritnejšia, farba pozadia nadpisu H3 bude žltá.
Tento jav sa nazýva Viacnásobné štýlové hárky a využíva sa vtedy, ak musíte unikátne – jednorazovo zmeniť inak pre ostatné stránky a bloky spoločnú farbu, zarovnanie či iné vlastnosti. Funguje iba v prípade, že ste najprv uviedli odkaz na CSS súbor a až za ním ste deklarovali hlavičkové štýly:
<head>
...
<link rel="stylesheet" href="style.css" type="text/css" />
...
<style>
Unikátne štýly v hlavičke
</style>
...
</head>
Poznámka: Bodky reprezentujú prázdne miesto, na ktoré vo vašom dokumente môžete dosadiť rôzne iné tagy patriace do hlavičky - napríklad <meta>
.
Záver
V budúcej časti načneme problematiku webdesignu pomocou CSS a tagov <div>
, takisto začneme dokonale preberať všetky vlastnosti a hodnoty, aké CSS pozná. Pred vami je teda ešte dosť veľa lekcií