CSS

Од Википедија, слободната енциклопедија
Прејди на: содржини, барај
Каскадни стилски страници
Наставка .css
MIME-тип text/css
Творец W3C
Прва верзија 17 December 1996; пред 17 години (17 December 1996)
Тип на формат јазик за стилски страници
Стандард(и) Ниво 1 (Препорака)
Ниво 2 (Препорака)
Ниво 2 Ревизија 1 (Препорака)

Каскадните стилски страници (CSS, од англ. Cascading Style Sheets) е јазик за стилски страници што се користи за опишување на презентацискта семантика (изгледот и форматирњето) на документ напишан во јазик за означување. Нејзини најчести апликации се стилот на веб страните напишани во HTML и XHTML, но јазикот исто така може да се примени на секој тип на XML документ, вклучувајќи обичен XML, SVG and XUL.

CSS е предвиден првенствено за да се овозможи поделба на содржината на документот (напишан во HTML или сличен markup language) за презентација на документот вклучувајќи елементи како рапоредот на страната, боите, и фонтот. Оваа поделба може да ја подобри содржината ,да овозможи флексибилност и контрола во одредбите на презентирање карактеристики, да им овозможи на повеќе страни да го споделат форматирањето , и да ја намалат комплексноста и повторувањето во структурната содржина. CSS исто така дозволува истата означена страна да биде презентирана во различни стилови за различни рендерирани методи како на екран, во печатена форма, со глас (кога се чита од гласовно-базирани прелистувачи или екрански читачи) или уреди на основа на Брајова азбука. Може да се користи и за да им дозволи на веб страните да се прикажуваат различно во зависност од големината на екранот или уредот на кој ќе биде прегледуван. Додека авторот на документот обично го води тој документ во CSS стил, корисниците може да употребуваат друг стил,како на пример оној на нивниот компјутер за да го замени оној кој е укажан од авторот.


Синтакса[уреди]

CSS има едноставна синтакса и употребува англиски клучни зборови за наведување на имињата на различни својства.

CSS се состои од листа на правила. Секое правило или множество од правила се состои од едно или повеке селекториисказен блог. Исказниот блог содржи листа од искази во загради. Секој исказ се состои од особина, две точки (:), и вредност. Ако има повеќе искази во еден блог, мора да се стави точка-заперка (;) за да се оддели секој исказ..[1] Во CSS, селекторите се употребуваат за да декларираат на коЕ означување стилот се однесува. Селекторите можат да се однесуваат на сите елементи на укажан тип ,на елементи укажани од атрибутите или на елементи во зависнот од тоа каде се поставени или вгнездени во рамките на други во вид на дрво.

Псевдо-класите се употребуваат во CSS селекторите за да дозволат форматирање базирано на информација која е надвор од дрвото на документот .Често употребуван пример на псевдо-класа е :hover, кој ја идентификува содржината само кога корисникот 'укажува на' видливиот елемент, обично со поставување на курсот на глувчето врз него. Тоа е во прилог на селекторот како во a:hover или #elementid:hover.Псевдо-класата класифицира елементи на документот, како :link или :visited, каде псевдо-елементот прави избирање кое може да се состои од делумни елементи како :first-line или :first-letter.[2]

Селектори може да се комбинираат на многу начини, особено во CSS 2.1,за да се постигне поголема конкретност и флексибилност.[3]

Еве еден пример со употреба на овие правила:

selector [, selector2, ...] [:pseudo-class] {
 property: value;
 [property2: value2;
 ...]
}
/* comment */

Употреба[уреди]

Пред CSS,речиси сите презентациски атрибути на HTML документите биле содржани во рамките на HTML ; сите фонтови, бои, позадински стилови,, порамнувањата на елементите, граници и големини мораа да бидат експлицитно опишани, честопати повторувани во рамките на HTML. CSS им дозволува на авторите да преместат голем дел од тие информации во друга датотека, друг style sheet, што резултира со значително поедноставен HTML.

Насловите (h1 елементи), поднасловите (h2), под-поднасловите (h3), итн.,се дефинирани структурирано користејќи HTML. Во печатена форма и на екран, изборот на фонт, големина, боја и акцент за тие елементи е презентациски.

Пред CSS, авторите на документите кои сакаа да додадат типографски карактеристики, да речеме на сите h2 наслови мораа да го повторуваат HTML презентациското означување за секое појавување на тој тип на наслов. Ова ги правеше документите покомплицирани, поголеми, и потешки за одржување. CSS овозможува одделување на презентацијата од структурата. CSS може да дефинира бои, фонтови, порамнување на текстот, големина, граници, растојание, распоред и многу други типографски карактеристики, независно за екран и печатени форми. CSS, исто така дефинира не-визуелни стилови како што се брзината и акцент со кој текст се чита од страна на оралните читателите. W3C ја има запоставено употебата на HTML означувањето.

Надворешните CSS датотеки, како што е опишано подолу, може да биде поврзан со HTML документ со користење на следнава синтакса:

<link href="path/to/file.css" rel="stylesheet">

Извори[уреди]

CSS информациите можат да се обезбедат од различни извори. CSS стилот на информацијата може да биде во посебен документ или може да биде вгнезден во HTML документ. Повеќето стилови може да се увозат. Различни стилови може да се применуваат во зависност од тоа каков излезен уред се користи ; на пример, верзијата на екранот може да биде различна од испечатената верзија, така да авторотите можат да ја прилагодат презентацијата соодветно за секој медиум.

Приоритетни шеми за CSS изворите(од највисокиот до најнискиот приоритет):

  • Стилот за авторот (обезбеден од дизанерот на веб страната), во форма на:
    • Внатрешни стилови, внатре во HTML документот, стил на информацијата за секој елемент, одредена со употреба на style атрибутот
    • Вградени стилови, блокови на CSS информации внатре во самиот HTML
    • Надворешни стилови, посебна CSS датоттека референцирана од документот
  • Стилот за корисникот:
    • Локална CSS датотека која корисникот ја одредува со можност за пребарувач, која делува како потиснувач кој се применува на сите документи
  • Стилот за кориснички агент
    • Стандардните стилови се применуваат од страна на корисничкиот агент односно стандардните поставувања на прелистувачот за презентација на секој елемент

Стилот со најголем приоритет го контролира прикажувањето на содржината на екран. Декларациите кои не се поставени во изворот на највисокиот приоритет се пренесуваат на извор со понизок приоритет, како што се корисничките агенти. Овој процес се нарекува каскадирање.

Една од целите на CSS е да му дозволи на корисниците поголема контрола на презентацијата. На некој на кого му е тешко да прчите црвен закосен наслов може да си примени друг стил. Во зависност од прелистувачот и веб страната, корисникот може да избира различни стилови овозможени од дизајнерите, или може да ги отстрани сите додадени стилови и да ја прегледа веб странатa со стандарните стилови на прелистувачот, или може да го отфрли црвениот закосен наслов без да ги промени другите атрибути.

Историја[уреди]

Стиловите постоеле во една или друга форма уште во почетоците на SGML во 1980 година. Каскадирањето на стиловите било развиено како сретство за креирање на конзистентен пристап за обезбедување на стил на информациите за веб документите.

Со развивањето на HTML, дојде и опфаќањето на поширок спектар на стилски способности за да се исполни барањето на веб дизајнерите. Оваа еволуција му овозможи на дизајнерот повеќе контрола над изгледот на страната по цена на покомплексен HTML. Варијациите во имплементацијата на прелистувачите како ViolaWWW и WorldWideWeb,[4] го направија тежок изгледот на веб страната и корисниците имаа се помалку контрола на тоа како веб содржината беше прикажана. Robert Cailliau сакаше да ја оддели структурата од презентацијата.[4] Идеалниот начин би бил да им се дозволи на корисниците различни опции и пренесување на три различни видови на стилови : еден за печатење, еден за презентација на екран и еден за функција на уредникот.[4]

За подобрување на способностите на веб презентацијата , девет различни јазици за стил беа предложени на World Wide Web Consortium. Од тие девет, два беа избрани како основа на она што стана CSS: Каскадирање на HTML Style Sheets (CHSS) и Stream-based Style Sheet Proposal (SSP). Bert Bos работеше на прелистувач наречен Argo, кој употребуваше свој јазик за стил наречен SSP.[5] Lie and Yves Lafon му се придружија на Dave Raggett за проширување на Arena прелистувачот за подржување на CSS како апликација за тестирање за W3C.[6][7][8] Lie и Bos работеа заедно за развој на CSS стандард ( 'H' беше отстрането од името бидејќи овие стилови се однесуваа и на други јазици за означување не само на HTML).[9]

За разлика од постоечките јазици за стил како DSSSL и FOSI, CSS дозволуваше стилот на документот да биде под влијание на други стилови.

Предлогот на Lie беше претставен на "Mosaic and the Web" конференцијата (подоцна наречена WWW2) во Chicago, Illinois во 1994, и повторно со Bert Bos во 1995 година .[9] Околу ова време W3C веќе постоеше, и се интересираше за развојот на CSS. Организираа работилница за таа цел на чело со Steven Pemberton. Ова резултираше во W3C со додавање работа на CSS за испорака на HTML за уредување на прегледот(ERB). Lie и Bos беа основниот технички персонал на овој проект , со дополнителни членови вклуќувајќи го и Thomas Reardon од Microsoft. Во август 1996 Netscape Communication Corporation презентираше алтернативен style sheet јазик наречен JavaScript Style Sheets (JSSS).[9] Оваа одредба никогаш не беше завршена и е застарена.[10] При крајот на 1996, CSS беше подготвен да стане официјален и CSS ниво 1 беше објавен во Декември.

Развојот на HTML, CSS, и DOM завземаа место во една група, одборот за уредување на прегледот (ERB). Во почетокот на 1997, ERB беше поделен на 3 групи: HTML работна група на чело со Dan Connolly од W3C; DOM работна група на чело со Lauren Wood од SoftQuad; и CSS работна група на чело соChris Lilley од W3C.

CSS работната група почна да се справува со проблемите кои не беа опфатени со CSS ниво 1, што резултираше со креирање на CSS ниво 2 во November 4, 1997. CSS ниво 2 беше објавен како препорака на W3C на 12 Мај 1998. CSS ниво 3 кое започна 1998, is still се уште е во развој од 2009.

Во 2005, CSS работните групи одлучија да спроведат барања за построги стандарди.Ова значеше дека веќе објавените стандарди како CSS 2.1, CSS 3 Селектори и CSS 3 беа повлечени од препораките за кадидати за работно ниво.

Тешкотии со усвојување[уреди]

CSS 1 пецификацијата беше завршена во1996.Internet Explorer 3[9] почна со работа истата година ,со лимитирана поддршка за CSS.Но поминаа повеќе од три години пред секој прелистувач да постигне речиси целосна имплементација на одредбата.Internet Explorer 5.0 за Macintosh, беше првиот прелистувач кој имаше целосна CSS 1 поддршка ,[11] и успеа да го намине Opera, прелистувачот кој беше лидер за CSS поддршка. Другите прелистувачи набрзо им се приклучија и многу од нив имплементираа делови од CSS 2.

Иако Internet Explorer 3[9] и4, и Netscape 4.x имаа поддршка за CSS, не беше целосна и имаше сериозни грешки (bugs). Ова беше сериозна пречка за усвојувањето на CSS.

Кога прелистувачите 'верзија 5' почнаа да нудат целосна имплементација на CSS,тие сеуште беа неточни во одредени области и беа со недостатоци и грешки(bug). Зголемувањето на бројот на недостатоци поврзани со CSS предизвикаа тешкотија кај дизајнерите да постигнат ист изглед на веб страната кај секој прелистувач и на секоја платформа.

Проблемите со прелистувачите за усвојување на CSS, заедно со листата на типографски грешки во изворната одредба, го натераа W3Cда го ревидира CSS 2 стандардот во CSS 2.1.Некои CSS 2 својства кои ниеден прелистувач не ги имплементира успешно беа отфрлени и во некои случаеви дефинираните постапки беа изменети за да го донесат стандардот во согласност со постоечките имплементации. CSS 2.1 стана препорака за кандидат на 25 Февруари, 2004, но CSS 2.1 беше вратен на работната група на 13 Јуни, 2005[12] and only returned to Candidate Recommendation status on July 19, 2007.[13]

Во минатотот, некои веб сервери беа конфигурирани за да им служат на сите документи со filename екстензија .css[14] како mime type application/x-pointplus[15] а не како text/css.Во времето кога компанијата Net-Scene го продаваше PointPlus Maker за конвертирање PowerPoint датотеки во Slide Show датотеки (со употреба на .css екстензија).[16]

Варијации[уреди]

CSS има различни нивоа и профили. Секое ниво од СЅЅ беше изградено над последното, со додавање на нови функции и обично означени како CSS 1, CSS 2, CSS 3, and CSS 4.Профилите се обично подмножества на едно или повеќе нивоа на CSS изградени за одреден уред или кориснички интерфејс. Моментално има профили за мобилни уреди, печатачи, и телевизори. Профилите не треба да се мешат со медиа типовите кои се додадени во CSS 2.

CSS 1[уреди]

Првата CSS-одредба која постана официјална препорака на W3C е CSS ниво 1, издадена во Декември 1996 [17] Неговите способности се поддршка за

  • Фонт својства како фонт и акцент
  • Боја на текст, позадина и други елементи
  • Текст атрибути како растојание помеѓу зборовите и линиите на текстот
  • Порамнување на текстот, сликите и другите елементи
  • Разлика, граници,зглавје и позиција на повеќето елементи
  • Уникатна идентификација и генеричка класификација на групите на атрибутите

W3C не ја подржува повеќе CSS 1 препораката .[18]

CSS 2[уреди]

Одредбата за CSS ниво 2 беше дизајнирана од W3C и издадена како препорака во Мај 1998. Множеството на CSS 1 и CSS 2 вклучува голем број на нови можности како апсолутно, релативно и фиксно позиционирање на елементите и z-index, концепт на медија типови како и поддршка за орални стилови и двонасочен текст, и својства за нов фонт како сенки.

W3C повеќе не ја одржува CSS 2 препораката.[19]

CSS 2.1[уреди]

CSS ниво 2 ревизија 1 често се спомнува како "CSS 2.1",поправа грешки во CSS 2,ги остранува малку подржаните или нецелосно компатибилни можности и додава веќе имплементирани екстензии на прелистувачот до одредбата. Со цел да се усогласат со W3C процесот за стандардизирани технички одредбите, CSS 2.1 оди напред-назад помеѓу работната група и препораката за кандидат. CSS 2.1 прво стана препорака за кандидат на 25 Февруари, 2004 но беше вратен на работната група на 13 Јуни 2005 за дополнителен преглед. Се врати како препорака за кандидат на 19 Јули, 2007 и беше ажуриран двапати во 2009. И покрај промените кои беа направени, пак беше вратен на работната група во Декември 2010.

CSS 2.1 стана предлог за препорака за кандидат на 12 Април 2011.[20] Откако беше разгледан од страна на W3C советодавниот комитет, конечно беше издаден како W3C препорака на 7 Јуни 2011.[21]

CSS 3[уреди]

За разлика од CSS 2, CSS 3 е поделен во неколку посебни документи наречени "модули". Секој модул додава нова можност или проширува функција која е веќе дефинирана во CSS 2. Работата на CSS ниво 3 започна за време на издавањето на оригиналната CSS 2 препорака. Најраните CSS 3 шеми беа објавени во Јуни 1999.[22]

До Јуни 2012,има над 50 CSS модули објавени од CSS работната група.[22] и 4 од нив беа објавени како формални:

CSS 4[уреди]

Не постои такво нешто наречено CSS,[23] бидејќи е поделен во посебни модули. Сепак, постојат "ниво 4" модули.[24]

Откако CSS3 ги подели дефинициите на CSS јазикот во модули, модулите се дозволени во нивоата независно. Повеќето модули се ниво 3 и тие изградуваат врз работи од CSS 2.1. Неколку модули на ниво 4 постојат (како Image Values, Backgrounds & Borders, или Selectors), кои изградат врз функционалностите на претходното ниво 3. Други дефинираат потполно нови функционалности како Flexbox.

Па се додека не постои монолитен "CSS4" што ке работи откако "CSS3" ке биде комплетно завршен, модулите на ниво 4 можат да се наведуваат како "CSS4".

Поддршка од прелистувачите[уреди]

Бидејќи не сите прелистувачи правилно го расчленат кодот, развиената техника за кодирање позната како CSS hacks која може или да филтрира поединечни прелистувачи или да цели кон поединечни прелистувачи(генерално двете се познати како CSS filters). Првото може да се дефинира како CSS filtering hacks додека другото како CSS targeting hacks. И двете можат да се употребат за да скријат или да покажат делови од CSS на различни прелистувачи.Ова се постигнува или со ексцентрично експлоатирање на CSS-расчленување или со грешки (bugs) во прелистувачот, или со искористување на недостатоците за поддршка за деловите од одредбата на CSS.[25] Со употребување на CSS филтри некои дизајнери одат далеку како испорака на различен CSS за одредени прелистувачи за да се осигура дека дизајнот ќе се прикажи како што се очекува.

Пример за добро позната CSS прелистувачка грешка(bug) е Internet Explorer box model bug, каде ширината на кутијата(box) се интерпретира погрешно во неколку верзии на овој прелистувач, што резултира во блокови кои се претесни кога се прегледува во Internet Explorer, но точни во стандардни прелистувачи. Оваа грешка(bug) може да биде избегната во Internet Explorer 6 со употреба на точен тип на документот doctype во (X)HTML documents. CSS hacks и CSS filters се користат за да се компензира за грешките како оваа, која е една од илијадниците CSS bugs кои се документирани во различни верзии на Netscape, Mozilla Firefox, Opera, и Internet Explorer (вклучувајќи го и Internet Explorer 7).[26][27]

Дури и кога достапноста на CSS-способни пребарувачи ја направени CSS остварлива технологија, усвојувањето на CSS се уште се држеше назад од борбата помеѓу дизајнерите и прелистувачите. Дури и денеска овие проблеми се уште се случуваат и го прават CSS дизајнот покомплексен и поскап отколку што беше наменето, и тестирањето преку прелистувач останува неопходно. Други причини за постоечкото не-усвојување на CSS се: неговата комплесност, недостаток на близината на дизајнерите со синтаксата и потребните техники за CSS, слабата поддршка на алатки за пишување, ризиците од недоследност кај прелистувачите и зголемените трошоци за тестирање.

Ограничувања[уреди]

Некои забележани ограничувањата на моменталните способности на CSS се:

Селектори не се во можност да се искачат
CSS не нуди начин да е избере родител или предок на елементот кој ги задоволува одредени критериуми,[28] until CSS Selectors Level 4,[29]. Повеќе напредни шеми на селекторите (како XPath)ќе овозможат повеќе софистицирани стилови. Сепак, главната причина за тоа зошто CSS работната група го одбива предлогот за селектори-родители се поврзани со перформансите на прелистувачите и делумно рендерирани проблеми.[30]
Вертикално контролни ограничувања
Додека хоризонталната поставеност на елементите е обично лесно да се контролира, вертикална поставеност е често целосно невозможна. Еднозтавните задачи како центрирање на елемент вертикално или поставување на подножје(footer) не повисоко од дното на гледиштето или побарува комплицирана правила за стил, или е едноставно но со неподржани правила.[28]
Отсуство на изрази 
Моментално нема способност да се укажуваат својства за вредност како едноставни изрази (како margin-left: 10% – 3em + 4px;). Ова ќе биде корисно за сличаи како пресметување на големината на колоните. W3C работната група за препораки со calc() вредноста за адресирање на оваа ограничување беше објавено од страна на CSS WG.[31]
Недостаток на декларација за колоните
Додека со моменталниот CSS 3 (со употреба на column-count модулот),[32] е можен распоред(layout) со повеќе колони тој може да биде комплексен за имплементација со CSS 2.1. Со CSS 2.1, процесот обично се прави со подвижни елементи кои обично се рендерирани различно од различни прелистувачи и различни екрани.
Не е возможно експлицитно декларирање на нови обеми независни од позицијата
Правилата за опсег како z-index изгледот за најблискиот родител-елемент со позиција: апсолутна или релативна. Оваа чудна спој има несакани ефекти.
Неконтролираното однесување на динамичките псевдо-класи
CSS имплементира псевдо-класи кои овозможуваат одреден степен на повратни кориснички информации од условни апликации од алтернативни стилови. CSS псевдо-класа, ":hover", е динамичка (еквивалентна на JavaScript "onmouseover"),[33].
Не може да се именуваат правилата
Нема начин за именување на CSS правило, кое ќе овозможи (на пример) client-side скриптите да се однесуваат на првилото дури и кога неговиот селектор е променет
Не може да се вклучуваат стилови од едно правило во друго
CSS стиловите обично мора да бидат дуплирани во повеќе правила за да го постигнат посакуваниот ефект, со што ке предизвика дополнително одржување и темелно тестирање.
Не може да се наведе конкретен текст без поправка на означувањето
Покрај :first-letter псевдо-елементот, не може да се наведат конкретни движења низ текстот без да се користи place-holder елемент.

Предности[уреди]

Одделување на содржината од презентацијата
CSS го олеснува објавувањето на содржината во повеќе презентациски формати базирани на номинални параметри. Номиналните параметри вклучуваат експлицитни кориснички параметри, различни веб прелистувачи, тип на уредот на кој се гледа содржината, географската локација на корисникот и многу други променливи.
Site-wide конзистентност 
Кога CSS се употребува ефективно, во однос на наследувањето и каскадирањето глобален стил може да се употребува за да се влијае на стилот врз елементите на site-wide. Ако стилот на елементите треба да се промени, тие промени можат да се направат со едитирање на правилата во глобалниот стил. Пред CSS, овој вид на оддржување беше многу потежок, поскап и одземаше повеќе време.
Пропусен опсег
Интерфејсот, внатрешен или надворешен, го определува стилот на HTML елементите селектирани од class, типот или од релацијата со другите елементи. Ова е многу поефикасно од повторување на стилот на информациите за секоја појава на елементот. Надворешниот интерфејс е обично зачуван во кешот на прелистувачот и може да биде употребува од повеќе веб страни без да бидат повторно вчитани.
Реформатирање на страна
Со едноставна промена на една линија, различен стил може да биде употребен за иста страна. Ова има предност за поголема пристапност како и за прилагодување на страната за различни уреди.
Пристапност
Без CSS, веб дизајнерите обично мораат да ги поставуваат нивните веб страни со техники кои не ја припречуваат пристапноста за корисниците со оштетен вид, како HTML tables (види Tableless web design#Accessibility).

CSS рамки[уреди]

CSS рамки се веќе подготвени библиотеки кои се наменети за полесен, постандарден стил на веб страните со употреба на јазик за каскадирање на стилови(Cascading Style Sheets language). Layout-grid поврзаните CSS рамки вклучуваат Blueprint, 960 grid, и YUI CSS grids. Како програмирањето и библиотеките во јазиците за скрипти, CSS рамките обично се вклучуваат како надворешни .css референци во HTML <head>.Тие обезбедуваат голем број на готови опции за дизајнирање на веб страна. Додека многу од тие рамки се објавени, многу дизајнери ги користат повеќето од нив само за прототипови или за учење.[34]

Позиционирање[уреди]

CSS 2.1 дефинира три позиционирачки шеми:

Нормален проток
Вградените елементи се вметнати на ист начин како буквите во зборовите во текстот, еден по друг во слободниот простор се додека има место, потоа почнува нова линија. Блок елементите се редат вертикално, како параграфи и како елементи во нумеричката листа. Нормален проток обично вклучува релативно позиционирање на блоковите или вметнатите елементи и работат во кутии.
Проточен
Проточниот елемент се вади од нормалниот проток и се префрлува лево или десно што е можно подалеку во слободниот простор.
Апсолутно позиционирање
Апсолутно позиционираните елементи немаат влијание и немаат место во нормалниот проток на другите елементи односно завземаат доделени позиции во нивните кутии независно од другите елементи.[35]

Позиција: горе, долу, лево, и десно[уреди]

Има 4 основни вредности на position својството. Ако елементот е позициониран на некој друг начин освен static, тогаш дополнителните својства како top, bottom, left, и right се употребуваат за одредување на позицијата.

Статичка
Вообичајната вредност го сместува елементот во нормалниот проток
Релативна
Елементот се сместува во нормалниот проток,и потоа се префрлува од таа позиција. Последователните проточни елементи се поставени како елементот да не бил поместен воопшто.
Апсолутна
укажува апсолутно позиционирање. Елементот е поставен во релација со неговиот најблизок нестатички предок.
Фиксна
Елементот е апсолутно позициониран во фиксна позиција на екранот дури и ако остатокот од документот е помрднат.[35]


Види[уреди]

Референци[уреди]

  1. „W3C CSS2.1 одредба за множество на првила, искзни блокови и селектори“. World Wide Web Consortium. 7 јуни 2011. http://www.w3.org/TR/CSS21/syndata.html#q10. конс. 20 јуни 2009. 
  2. „W3C CSS2.1 Одредби за псевдо-елементите и псевдо-класите“. World Wide Web Consortium. 7 јуни 2011. http://www.w3.org/TR/CSS21/selector.html#pseudo-elements. конс. 30 април 2012. 
  3. see Комплетна дефениција на селекторите на W3C веб страната .
  4. 4,0 4,1 4,2 Petrie, Charles; Cailliau, Robert (ноември 1997). „Interview Robert Cailliau on the WWW Proposal: "Која е вистината."“. Institute of Electrical and Electronics Engineers. http://www.computer.org/portal/web/computingnow/ic-cailliau. конс. 18 август 2010. 
  5. Bos, Bert (14 април 1995). „Стилови за SGML & HTML на интернет“. World Wide Web Consortium. http://www.w3.org/People/Bos/style.html. конс. 20 јуни 2010. 
  6. Nielsen, Henrik Frystyk (7 јуни 2002). „Libwww Hackers“. World Wide Web Consortium. http://www.w3.org/Library/Collaborators.html. конс. 6 јуни 2010. 
  7. „Yves Lafon“. World Wide Web Consortium. http://www.w3.org/People/Lafon/. конс. 17 јуни 2010. 
  8. „The W3C Team: Technology and Society“. World Wide Web Consortium. 18 јули 2008. http://www.w3.org/People/domain?domain=Technology+and+Society. конс. 22 јануари 2011. 
  9. 9,0 9,1 9,2 9,3 9,4 Lie, Håkon Wium; Bos, Bert (1999). „Каскадирање на Style Sheets, дизајнирање на веб страни“. Addison Wesley. ISBN 0-201-59625-3. http://www.w3.org/Style/LieBos2e/history/. конс. 23 јуни 2010. 
  10. Lou Montulli (22 август 1996). „JavaScript-Based Style Sheets“. World Wide Web Consortium. http://www.w3.org/Submission/1996/1/WD-jsss-960822. конс. 23 јуни 2010. 
  11. „CSS software“. W3.org. http://www.w3.org/Style/CSS/software.en.html#w26. конс. јануари 2011. 
  12. Anne van Kesteren. „CSS 2.1 – Anne’s Weblog“. http://annevankesteren.nl/2005/06/css-21. конс. 16 февруари 2011. 
  13. „Archive of W3C News in 2007“. World Wide Web Consortium. http://www.w3.org/News/2007.html#entry-7058. конс. 16 февруари 2011. 
  14. McBride, Don (27 ноември 2009). „File Types“. http://donsnotes.com/tech/filetype.html. конс. 20 јуни 2010. 
  15. „css file extension details“. File extension database. 12 март 2010. http://extensions.pndesign.cz/css-file. конс. 20 јуни 2010. 
  16. Nitot, Tristan (18 март 2002). „Неточни MIME типови за CSS Files“. „Mozilla Developer Center“. Mozilla. https://developer.mozilla.org/en/Incorrect_MIME_Type_for_CSS_Files. конс. 20 јуни 2010. 
  17. W3C: Cascading Style Sheets, level 1 CSS 1 specification
  18. W3C: Cascading Style Sheets level 1 specification CSS level 1 specification
  19. W3C: Cascading Style Sheets, level 2 CSS 2 specification (1998 recommendation)
  20. W3C:Cascading Style Sheets, level 2 revision 1 CSS 2.1 specification (W3C Proposed Recommendation)
  21. W3C:Cascading Style Sheets Standard Boasts Unprecedented Interoperability
  22. 22,0 22,1 Bos, Bert (18 февруари 2011). „Descriptions of all CSS specifications“. World Wide Web Consortium. http://www.w3.org/Style/CSS/specs. конс. 3 март 2011. 
  23. Atkins Jr, Tab. „A Word About CSS4“. http://www.xanthir.com/b4Ko0. конс. 18 октомври 2012. 
  24. W3C CSS Selectors Level 4
  25. „Will the browser apply the rule(s)?“. Centricle.com. http://centricle.com/ref/css/filters/. конс. 20 јуни 2009. 
  26. „Како работи Internet Explorer 7 со каскадирање на Style Sheets“. Axistive. 28 јуни 2007. http://www.axistive.com/how-does-internet-explorer-7-work-with-cascading-style-sheets.html. конс. 28 јуни 2007. 
  27. bugs
  28. 28,0 28,1 Molly Holzschlag (јануари 2012). „Seven Things Still Missing from CSS“. .net Magazine. http://www.netmagazine.com/features/seven-things-still-missing-css. 
  29. „Selectors Level 4“. W3.org. http://www.w3.org/TR/selectors4/#subject. конс. 21 октомври 2012. 
  30. Snook, Jonathan (октомври 2010). „Why we don't have a parent selector“. snook.ca. http://snook.ca/archives/html_and_css/css-parent-selectors. 
  31. „CSS3 Values and Units“. W3.org. http://www.w3.org/TR/css3-values/#calc. конс. 20 јуни 2009. 
  32. „CSS Multi-column Layout Module“. World Wide Web Consortium. http://www.w3.org/TR/css3-multicol/. конс. мај 2011. 
  33. „Pure CSS Popups“. meyerweb.com. http://meyerweb.com/eric/css/edge/popups/demo.html. конс. 19 ноември 2009. 
  34. Cederholm, Dan; Ethan Marcotte (2009). „Handcrafted CSS: More Bulletproof Web Design“. New Riders. стр. 114. ISBN 978-0-321-64338-4. http://books.google.com/books?id=UgrUeIwsS60C&pg=PA114. конс. 19 јуни 2010. 
  35. 35,0 35,1 Bos, Bert (7 декември 2010). „9.3 Позиционирачки шеми“. „Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification“. W3C. http://www.w3.org/TR/CSS2/visuren.html#positioning-scheme. конс. 16 февруари 2011. 

Понатамошно читање[уреди]

Надворешни врски[уреди]


Шаблон:Stylesheet languages Шаблон:W3C Standards