BluePink BluePink
XHost
Servere virtuale de la 20 eur / luna. Servere dedicate de la 100 eur / luna - servicii de administrare si monitorizare incluse. Colocare servere si echipamente de la 75 eur / luna. Pentru detalii accesati site-ul BluePink.

Cu totii am scris la moment dat o pagina html simpla: doar text chior aruncat in pagina, eventual cu cateva heading-uri, paragrafe, liste, tabele, ... Dupa plasarea informatiei in pagina, probabil ca fiecare dintre noi si-a pus problema apoi sa adauge putina "culoare", moment in care html-ul baga utilizatorul in ceata. Evident elemente simple de stil sunt usor de realizat, dar ce se intampla insa daca cerintele de design sunt mai complexe?

Raspunsul se afla in ceea ce se cheama CSS, un limbaj standard pentru formatarea elementelor unui document, iar aparitia, evolutia si caracteristicile esentiale ale acestuia fac subiectul acestui articol.

Istoric

Necesitatea separarii informatiei de stil de cea propriu zisa in cadrul unui document s-a resimtit inca din anii 1970 odata cu aparitia SGML (Standard Generalized Markup Language), un metalimbaj standardizat folosit pentru definirea diverselor limbaje de marcare a documentelor. Limbajul CSS a fost dezvoltat ca o modalitate de a furniza intr-un mod fiabil informatii de stil documentelor de pe web. Avantajele care ar surveni din urma acestei separari ar fi schimbarile aplicabile tuturor paginilor prin intermediul unui singur stylesheet. La ora actuala exista mai multe tag-uri declarate depracated in HTML 4.0, de exemplu font.

Pe masura ce HTML-ul s-a dezvoltat a inceput sa reuneasca o gama foarte larga de informatii de stil pentru a raspunde cererii dezvoltatorilor web. Aceasta evolutie a conferit designerilor un mai mare grad de control asupra imaginii site-urilor dar costul platit pentru aceasta a fost cresterea in complexitate a limbajului. Diferite implementari ale browserelor web ale vremii faceau destul de dificila adaugarea informatiei de stil, iar userii aveau un grad mic de control asupra modului in care informatia era prezentata.

Initiativa de imbunatatire a modalitatii de prezentare a informatiei pe web a venit din partea W3C, odata cu propunerea a 9 limbaje specializate in acest sens. CSS a avut ca predecesori 2 dintre limbajele propuse de W3C si anume: CHSS (Cascading HTML Style Sheets) si SSP (Stream-based Style Sheet Proposal). Primul a fost propus de Hakon Wium Lie in octombrie 1994, iar al doilea de catre Bert Bos care l-a utilizat in cadrul unui browser.

Noutatea cu care venea CSS fata de alte limbaje ale vremii era faptul ca permitea ca un document sa aiba asociate mai multe style-sheet-uri, intre ele putand eventual exista relatii de mostenire, astfel realizandu-se o amestecare a elementelor de stil controlabil atat de designer cat si de utilizator. Propunerile au fost prezentate in cadrul conferintei "Mosaic and the Web", Chicago, Illinois in 1994 si respectiv 1995. Dezvoltarea limbajului a cazut sub incidenta World Wide Web Consortium, care la numai un an mai tarziu publica prima recomandare pentru CSS 1.

La inceput CSS s-a dezvoltat in paralel cu HTML si DOM in cadrul aceluiasi grup (HTML Editorial Review Board - ERB). Mai tarziu, la inceptul anului 1997 grupul a fost separat in alte 3 grupuri separate de lucru. In cadrul grupului destinat CSS s-a incercat abordarea unor probleme care nu fusesera solutionate in cadrul CSS 1, ajungandu-se la finalul anului 1997 la crearea CSS 2. CSS1 a fost in continuare mentinut si revizuit in 1999. CSS3 a fost inceput in 1998 si este inca in dezvoltare.

Variatiuni

CSS are mai multe niveluri si profiluri. Fiecare nivel al CSS e construit pe baza nivelului precedent, de regula adaugand noi facilitati. Profilurile sunt in speta subseturi ale unuia sau mai multe nivele din CSS construite pentru un anumit dispzitov sau pentru a anume interfata cu utilizatorul. La momentul curent exista profiluri pentru dispozitive mobile, imprimante, ...

CSS1

Prima specificatie a CSS oferea suport pentru urmatoarele facilitati:

  • Proprietati de font - tipuri si emphasis
  • Culori ale textului/fondului si ale altor elemente
  • Atribute de text precum spatieri ale cuvintelor, literelor si liniilor de text
  • Alinierea textului, imaginilor, tabelelor ...
  • Identificare unica si clasificare generica pentru grupuri de atribute

CSS2

Pastreaza compatibilitatea cu CSS 1, nefiind necesare schimbari ale codului folosit pentru versiunea veche. Introduce in plus fata de CSS1 cateva noi facilitati precum:

  • Capabilitati de pozitionare (absoluta sau relativa)
  • Pseudoclase
  • Conceptul de media-types
  • Suport pentru aural style sheets si text bidirectional
  • Noi proprietati ale fonturilor (de exemplu efecte de umbra)
  • Stylesheet-uri pentru imprimante, TV ...

CSS3

Se afla in curs de dezvoltare iar w3c mentine CSS3 progress report. CSS3 este modularizat si va consta in mai multe recomandari w3c.

CSS este suportat la ora actuala de toate browsere existente mai mult sau mai putin complet. Din nefericire toate browserele au bug-uri de implementare si nici unul dintre ele nu suporta specificatia CSS 2 completa, motiv pentru care testarea cross-browser a unei aplicatii web ramane o necesitate.


Pentru mai multe informatii accesati: