Tyylit

Jos html - sivuilla on paljon tyylimäärittelyjä, sivujen ylläpitäminen muodostuu työlääksi varsinkin mikäli sivuja ja määrityksiä on paljon.

Sivujen ylläpitämisen helpottamiseksi on kehitetty erityiset tyylisivut (Cascading Style Sheets).

Tyylit määritellään ominaisuus: arvo -pareina, joiden erottimena on kaksoispiste. Kaksoispistettä ei tarvita, jos pareja on vain yksi tai on luettelon viimeinen pari.

Tyylimäärittelyjä voidaan tehdä kolmella eri tavalla. 

1) Joko suoraan html - koodin joukkoon,

Näissä ns. inline tyyleissä ominaisuus: arvo -parit sijoitetaan lainausmerkkien sisään ja asetetaan style-atribuutin arvoksi.

Esim. <li style="font-size: 10pt; font-weight: bold">  tekee listan tyyppimäärityksen.


2) html-sivulle upotettuna tai

Tyylit määritellään <head>-osassa käyttäen <style>-tagia. Alla olevassa esimerkissä määritellään tyyli peruskappaleelle (p) ja 1-tason otsikolle (h1).

<html> 

<head>
< title>otsikko</title>

< style type="text/css"
< !--
p { 
font-size: 10pt;
font-family: verdana, arial, sans-serif; 
color: #000066 
} 
h1 { 
font-size: 16pt;
font-family: impact, arial, sans-serif;
color: #990000 
} 
--> 
< /style

< /head> 
<body>... 

3) html-sivulle linkitettynä.

Mikäli useampi dokumentti käyttää samoja tyylejä, voidaan niistä tehdä erillinen tyylitiedosto ja linkittää tämä kuhunkin dokumenttiin sen <head>-osassa. Tyylitiedoston tyyppi alla olevassa esimerkissä on .css. Se on kuitenkin normaali ASCII-tiedosto, joka sisältää yhteiset tyylimäärittelyt. 

<html> 
<head> 
<link rel=stylesheet href="../styles/stylesheets.css" type="text/css"
<title>...</title> 
</head> 
<body>... 


Linkitettyjen ja upotettujen tyylien tapauksessa tyylimäärittelyt asetetaan tietyille elementeille (selector), jotka voivat olla mitä tahansa html-elementtejä. 

Tyylejä voidaan määritellä myös yhdistämällä kaksi elementtiä: 

p strong { color: #ff0000 } 

Tämä tyyli vaikuttaa ainoastaan <p>-tagin sisällä olevaan strong-tagilla korostettuun tekstiin. Jos halutaan vaikuttaa strong-tagin ulkonäköön riippumatta sen sijainnista, määritellään seuraavasti:

strong { color: #ff0000 } 

Tyylimäärittelyt on järkevää sijoittaa kommenttitagin sisään, jotta CSS:ää ymmärtämättömät selainohjelmat eivät erehdy luulemaan niitä sisällöksi.

Tyylimuutos voidaan kohdistaa tekstin sisällä (inline) myös mihin tahansa osaan <span>- tai <div>-tagilla, esim.

<div style="margin-left: 0.5in; font-size: 10pt">...</div> 

tai 

<span style="font-weight: bold; background: #ffff00"> 
<span style="font-weight: bold; color: #000066; background: #ffff00"> highlighted text 
</span> 
</span> 


Joissakin tapauksissa voi tulla määritelleeksi samalla elementille monenlaiset ominaisuudet erilaisilla tyylien toteutustavoilla (linkitetty/upotettu tyylitiedosto ja inline-tyyli). Tällöin selaimen on päätettävä mitä määritystä noudattaa. Valinta tehdään etuoikeusjärjestyksen perusteella. 

Etuoikeusjärjestys on seuraava: 

1) inline tyylit 
2) upotetut tyylit ja
3) linkitetyt tyylit 

Tyylit luokkina

Tyylien ns. perinnöllisyys lisää tyylien joustavuutta. Perinnöllisyys tarkoittaa seuraavaa: jokaiseen tyylielementtiin voidaan lisätä luokkia, jotka perivät emätyylinsä ominaisuudet, mikäli ko. ominaisuutta ei nimenomaan määritellä olemaan jotain muuta, tai mikäli ominaisuus on ei-periytyvä. Esimerkiksi

p {
font-family: "trebuchet ms", "comic sans ms", arial, sans-serif, helvitica;
font-weight: bold; 
font-size: 11pt;
color: #000066; 
margin-left: 1cm;


p.small {
font-family: arial, sans-serif; 
font-size: 8pt; 
text-align: center; 


Haluttaessa ihan tavallinen kappale käytetään <p>-tagia, ja haluttaessa pienellä kirjoitettu, keskitetty kappale käytetään määritystä <p class=small>. 

Myös yleisiä luokkia, jotka voidaan liittää mihin tahansa elementtiin, voidaan määritellä

.note {
font-size: 10pt; 
color: #006600; 
background: #ffffff; 
position: relative; 
padding: 2pt; 
border-width: thin; 
border-style: ridge; 


Linkit erikoistapauksena


<a>-tagille (eli linkkisanoille) voidaan tyyleillä määritellä seuraavat luokat:

a:link { color: #ffff00 } - linkin väri
a:visited { color: #990099 } - käytetyn linkin väri
a:active { color: #ff0000 } - viimeksi käytetyn linkin väri
a:hover { color: #00ff00 } - tuottaa ns. hotspot-efektin eli vaihtaa linkkitekstin väriä, kun kohdistin tulee sen päälle.