CSS je formalni jezik koji se koristi za opisivanje izgleda dokumenta kreiranog pomoću jezika za označavanje (HTML, XHTML, XML). Naziv dolazi od engleskog Cascading Style Sheets, što znači "kaskadni listovi stilova".
Zašto se koristi CSS?
Svrha CSS-a je razdvojiti ono što specificira izgled stranici, od njenog sadržaja. Ako je dokument izrađen samo sa koristeći HTML, tada definira ne samo svaki element, već i način na koji se prikazuje (boja, font, položaj bloka itd.). Ako su kaskadni listovi stilova povezani, tada HTML opisuje samo redoslijed objekata. A CSS je odgovoran za sva njihova svojstva. U HTML-u je dovoljno navesti klasu bez ispisivanja svih stilova svaki put.
Ova tehnologija:
- Osigurava relativno jednostavan i brz razvoj jer se jednom kreirani dizajn može primijeniti na mnoge stranice;
- povećava fleksibilnost i jednostavnost uređivanja - samo uredite u CSS-u da bi se dizajn svugdje promijenio;
- čini kôd jednostavnijim, smanjujući ponavljanje elemenata. Lakše ga je čitati programerima i pretraživačima;
- ubrzava vrijeme učitavanja jer se CSS može spremiti u predmemoriju pri prvom otvaranju, a pri sljedećim otvaranjima čitaju se samo struktura i podaci;
- povećava količinu vizualna rješenja prezentirati sadržaj;
- pruža mogućnost jednostavne primjene različitih stilova na jedan dokument (na primjer, stvaranje prilagođene verzije za Mobilni uredaji ili posebni stilovi za slabovidne osobe).
Odnosno, kaskadne tablice služe ne samo za implementaciju dizajna, već i radikalno mijenjaju pristup izradi web stranica, pojednostavljujući rad programera i pružajući fleksibilnost u implementaciji. Tome služi CSS.
Razvoj CSS-a
Potrebu za razvojem CSS-a prepoznao je W3C 1990-ih. Godine 1996. usvojen je standard CSS1 koji vam omogućuje promjenu postavki fonta, boje, atributa teksta, poravnanja i ispune. Godine 1998. objavljen je CSS2 koji je dodao mogućnosti za korištenje raspored blokova, zvučne tablice, generirani sadržaj, indeksi, stranica medija. Verzija CSS3 značajno je povećala mogućnosti stilova: postala je pristupačna kreacija animirani elementi bez koristeći JavaScript, pojavila se podrška za anti-aliasing, sjene, gradijente itd. Specifikacija je podijeljena na module, od kojih se svaki počeo razvijati zasebno. Od 2011. godine u tijeku je razvoj CSS4 modula. Značajke su trenutno opisane u nacrtima.
Struktura jezika
CSS se može okarakterizirati jednostavnim riječima kao skup pravila koja opisuju kako bi element trebao izgledati.
Pravilo se sastoji od selektora i bloka deklaracije.
Selektori
Selektor govori u kojem je elementu opisano CSS svojstva stil. Bilo koja oznaka koja se može formatirati (veličina, boja itd.) može djelovati kao selektor. Ako trebate postaviti različite stilove za oznaku ili primijeniti jedan za različite elemente, koriste se klase i zapis u obliku “Tag.Class (property: value;)”. Naziv klase naveden je latiničnim slovima i može sadržavati podvlaku ili crticu. Ako ne navedete oznaku, ali započnete unos s ".Class", tada možete koristiti pravilo za bilo koju oznaku. Ako navedete nekoliko klasa za jednu oznaku, na nju će se primijeniti svi opisani stilovi. Identifikator specificira jedinstveno ime za element koji treba stilizirati ili kojemu treba pristupiti pomoću skripte. Unos "#Identifikator (svojstvo: vrijednost;)". Naziv identifikatora sastoji se od slova latinica, prihvatljivo je koristiti crticu i podvlaku. Da biste primijenili identifikator na određenu oznaku, navedite njegov naziv, a zatim bez razmaka i odvojen znakom funte, naziv identifikatora.
Blok oglasa
Blok deklaracije sastoji se od parova svojstvo: vrijednost (unos uvijek slijedi dvotočka), smještenih u vitičaste zagrade. Unosi završavaju točkom i zarezom. CSS ne razlikuje tabulatore, razmake i velika i mala slova. Odabir načina snimanja (uvučeni stupac ili jednostavno u liniji) je prema nahođenju programera. Ako su za jedan selektor navedeni različita značenja za jedno svojstvo, donji unos ima prednost.
Povezivanje CSS-a
CSS se može povezati s HTML-om na nekoliko načina:
- unutar oznake pomoću atributa style. Nema potrebe za navođenjem selektora;
- dodaj oznaku
Primjer teksta