Z předchozí části kapitoly vidíme, že styly jsou opravdu mocný a výkonný nástroj pro zlepšení grafického vzhledu našich stránek. Jedinou nevýhodou je, že zatím ne všechny prohlížeče podporují všechny vlastnosti, které jsme zde popsali. Netscape Communicator podporuje styly až od verze 4.0. Internet Explorer je podporuje již od verze 3.0. Bohužel ani jeden z prohlížečů nepodporuje všechny vlastnosti stylů. Naštěstí každá nová verze přináší výrazná zlepšení v podpoře stylů. Styly tedy může hojně používat, ale stránky musíme psát tak, aby svůj význam neztratily ani v prohlížečích, které styly nepodporují.
Nyní si na jednoduché stránce prakticky ukážeme použití stylů.
Nejprve si do souboru mujstyl.css uložíme definici
stylu:
BODY { text-align: justify;
background-color: white;
color: black }
A:link { color: blue }
A:visited { color: gray }
A:active { text-decoration: blink }
P { text-indent: 20pt;
margin-top: 0pt }
.nadpis { text-align: center }
H1 { text-transform: uppercase;
background-color: blue;
color: yellow;
padding: 4px }
H2 { font-family: Arial, sans-serif }
.autor { font-variant: small-caps }
Styl ke stránce připojíme s využitím elementu LINK.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <TITLE>Stylově stylová stránka</TITLE> <LINK REL=StyleSheet HREF="mujstyl.css" TYPE="text/css"> </HEAD> <BODY> <DIV CLASS=nadpis> <H1>Stylově stylová stránka</H1> Jiří Kosek </DIV> <H2>CSS</H2> Káskádové styly dokumentů umožňují standardizovaným způsobem kontrolovat grafický vzhled webovských stránek. Jejich popis nalezneme v dokumentu <A HREF="http://www.w3.org/pub/WWW/TR/REC-CSS1.html">Cascading Style Sheets, level 1</A> jehož autory jsou <SPAN CLASS=autor>Håkon Wium Lie</SPAN> a <SPAN CLASS=autor>Bert Bos</SPAN>. <P>Jedinou nevýhodou je zatím malá podpora prohlížečů. To se však rychle mění, takže brzy bude mít většina uživatelů webu k dispozici odpovídající prohlížeč. <P>Pomocí stylů můžeme ovlivňovat mnoho vlastností stránky. Použitý řez písma, barvu textu i pozadí, velikost okrajů, vzdálenost mezi odstavci, velikost odstavcové zarážky, způsob zarovnání a mnoho dalšího. </BODY> </HTML>
Výsledné zobrazení naší stránky v prohlížeči Internet Explorer 4.0 si můžeme prohlédnout na obrázku 6.3 – „Stránka využívající styly“.
Tabulka 6.4. Vlastnosti písma
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
font-family |
|
záleží na prohlížeči | všechny elementy | ano | – | rodina písma |
font-style |
normal | italic | oblique |
normal |
všechny elementy | ano | – | styl písma: normal = normální,
italic = kurzíva,
oblique = skloněné
|
font-variant |
normal | small-caps |
normal |
všechny elementy | ano | – | varianta písma: normální nebo kapitálky |
font-weight |
normal | bold | bolder | lighter | 100 | 200 | 300
| 400 | 500 | 600 | 700 | 800 | 900 |
normal = 400
|
všechny elementy | ano | – | duktus písma (tj. „jak bude písmo silné“) |
font-size |
xx-small | x-small | small | medium | large | x-large
| xx-large | larger | smaller | |
medium |
všechny elementy | ano | relativně k rodičovské velikosti písma | velikost písma |
font |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ano | použitelné pro font-size a line-height |
komplexní nastavení vlastností písma |
Tabulka 6.5. Vlastnosti pro nastavení barev a pozadí
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
color |
|
záleží na prohlížeči | všechny elementy | ano | – | barva |
background-color |
|
tt transparent} | všechny elementy | ne | – | barva pozadí |
background-image |
|
none |
všechny elementy | ne | – | obrázek na pozadí |
background-repeat |
repeat | repeat-x | repeat-y | no-repeat |
repeat |
všechny elementy | ne | – | směry, ve kterých se bude obrázek na pozadí opakovat |
background-attachment |
scroll | fixed |
scroll |
všechny elementy | ne | – | pozadí se pohybuje se stránkou (scroll) nebo je
jako přibité (fixed)
|
background-position |
|
0% 0% (odpovídá top left)
|
blokové a nahrazované elementy | ne | vztahují se k velikosti vlastního elementu | poloha obrázku na pozadí (udává se X- a Y-pozice)
|
background |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | pouze u background-position |
komplexní nastavení vlastností pozadí |
Tabulka 6.6. Vlastnosti textu
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
word-spacing |
normal | |
normal |
všechny elementy | ano | – | o kolik se má zvětšit mezislovní mezera |
letter-spacing |
normal | |
normal |
všechny elementy | ano | – | o kolik se má zvětšit mezera mezi jednotlivými písmeny |
text-decoration |
none | [underline || overline || line-through || blink] |
none |
všechny elementy | ne | – | „ozdoba“ textu:
underline = podtržení,
overline = čára nad,
line-through = čára přes,
blink = blikání
|
vertical-align |
baseline | sub | super | top | text-top | middle |
bottom | text-bottom | |
baseline |
inline elementy | ne | vztahují se k hodnotě line-height |
vertikální zarovnání |
text-transform |
capitalize | uppercase | lowercase | none |
none |
všechny elementy | ano | – | převod textu na:
capitalize = kapitálky,
uppercase = velká písmena,
lowercase = malá písmena
|
text-align |
left | right | center | justify |
záleží na prohlížeči | blokové elementy | ano | – | zarovnání textu:
left = na levý praporek,
right = na pravý praporek,
center = centrování,
justify = do bloku
|
text-indent |
|
blokové elementy | ano | vztahují se k šířce rodičovského elementu | velikost odstavcové odrážky (odsazení první řádky odstavce) | |
line-height |
normal | |
normal |
všechny elementy | ano | relativně k velikosti písma elementu | výška řádky; číslo udává násobek velikosti písma
(většinou by měl být alespoň 1.2)
|
Tabulka 6.7. Vlastnosti boxů – I.
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
margin-top |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost horního okraje |
margin-right |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost pravého okraje |
margin-bottom |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost spodního okraje |
margin-left |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost levého okraje |
margin |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | vztahují se k šířce rodičovského elementu | komplexní nastavení velikosti okrajů |
padding-top |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost vnitřního horního okraje |
padding-right |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost vnitřního pravého okraje |
padding-bottom |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost vnitřního spodního okraje |
padding-left |
|
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | velikost vnitřního levého okraje |
Tabulka 6.8. Vlastnosti boxů – II.
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
padding |
[ |
0 | všechny elementy | ne | vztahují se k šířce rodičovského elementu | komplexní nastavení velikostí vnitřního okraje |
border-top-width |
thin | medium | thick | |
medium |
všechny elementy | ne | – | šířka horní části rámečku |
border-right-width |
thin | medium | thick | |
medium |
všechny elementy | ne | – | šířka pravé části rámečku |
border-bottom-width |
thin | medium | thick | |
medium |
všechny elementy | ne | – | šířka spodní části rámečku |
border-left-width |
thin | medium | thick | |
medium |
všechny elementy | ne | – | šířka levé části rámečku |
border-width |
[thin | medium | thick | |
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | komplexní nastavení šířky rámečku |
border-color |
|
hodnota vlastnosti color |
všechny elementy | ne | – | barva rámečku |
border-style |
[none | dotted | dashed | solid | double | groove | ridge
| inset | outset] {1,4} |
none | všechny elementy | ne | – | nastavení tvaru rámečku |
border-top |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | nastavení vlastností horní části rámečku |
border-right |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | nastavení vlastností pravé části rámečku |
Tabulka 6.9. Vlastnosti boxů – III.
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
border-bottom |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | nastavení vlastností spodní části rámečku |
border-left |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | nastavení vlastností levé části rámečku |
border |
|
implicitní hodnoty jednotlivých vlastností | všechny elementy | ne | – | komplexní nastavení vlastností rámečku |
width |
|
auto |
blokové a nahrazované elementy | ne | vztahují se k šířce rodičovského elementu | šířka |
height |
|
auto |
blokové a nahrazované elementy | ne | – | výška |
float |
left | right | none |
none |
všechny elementy | ne | – | umístění plovoucího objektu:
left = vlevo,
right = vpravo,
none = normální objekt
|
clear |
none | left | right | both |
none |
všechny elementy | ne | – | čekání na skončení plovoucích elementů:
left = vlevo,
right = vpravo,
both = na obou stranách
|
Tabulka 6.10. Klasifikační vlastnosti
| Vlastnost | Možné hodnoty | Implicitní hodnota | Aplikuje se na | Dědí se? | Interpretace procentních hodnot | Popis |
|---|---|---|---|---|---|---|
display |
block | inline | list-item | none |
block |
všechny elementy | ne | – | druh elementu |
white-space |
normal | pre | nowrap |
normal |
blokové elementy | ano | – | způsob práce s mezerami:
normal = normální,
pre = mezery a kance řádek se zachovají,
nowrap = text se nebude zalamovat do řádek
|
list-style-type |
disc | circle | square | decimal | lower-roman | upper-roman | lower-alpha |
upper-alpha | none |
disc |
elementy, které mají display: list-item |
ano | – | druh odrážek v seznamech |
list-style-image |
|
none |
elementy, které mají display: list-item |
ano | – | obrázek použitý jako odrážka v seznamu |
list-style-position |
inside | outside |
outside |
elementy, které mají display: list-item |
ano | – | umístění odrážky:
outside = před textem,
inside = v textu položky seznamu
|
list-style |
|
implicitní hodnoty jednotlivých vlastností | elementy, které mají display: list-item |
ano | – | komplexní nastavení vzhledu položek seznamu |

