Proměnné v CSS implementovány ve WebKitu

30. 6. 2008 21:56 (aktualizováno) Martin Hassman

Po zařazení proměnných do kaskádových stylů volala řada webdesignerů (nedávno např. pixy).  Důvod je prostý. Při designování se řada hodnot opakuje (typicky rozměry nebo barvy) a tak možnost definování vlastních proměnných nebo konstant přijde vhod.

Letos na jaře bylo webdesignerům dopřáno sluchu (viz zápis ze 4. dubna – odstavec constants).
Shodou okolností se tak stalo v den nástupu nových předsedů pracovní skupiny pro kaskádové styly, kterými se stali Daniel Glazman a Peter Linss. Řekl bych, že to byl úspěšný nástup. S větší bombou snad ani nemohli přijít.

Na návrhu specifikace CSS Variables, která se stane součástí CSS3, pracuje přímo Daniel Glazman s Davidem Hyattem (Apple, vývojář WebKitu). Ukázka syntaxe:

@variables {
  CorporateLogoBGColor: #fe8d12;
}

div.logoContainer {
  background-color: var(CorporateLogoBGColor);
}

Implementace ve WebKitu

Poslední noční buildy WebKitu mají CSS proměnné implementované. Vyzkoušet si je můžete na vytvořených ukázkách (jeden přímý odkaz).

Protože specifikace je zatím jen v návrhu, zahrnul WebKit do implementace vendor prefix (pokud by se specifikace změnila, nedostane se tak do konfliktu s touto první implementací), takže výše uvedený příklad zatím ve WebKitu vypadá takto:

@-webkit-variables {
  CorporateLogoBGColor: #fe8d12;
}

div.logoContainer {
  background-color: -webkit-var(CorporateLogoBGColor);
}

Specifikace umožňuje hodnoty proměnných měnit z JavaScriptu. Změnou hodnoty CSS proměnné tak přestylujete celý dokument. Tak co webdesigneři, netěšíte se?

(via Latest Webkit nightlies now support CSS Variables)

Sdílet