Tabella compatibilità degli hack e workaround CSS

In questa pagina si può trovare riassunto il supporto di alcuni selettori, proprietà e keyword nei browser, utile per preparare regole o dichiarazioni specifiche per un certo browser o un set di browser. Una nota è indispensabile: si tratta di soluzioni da usare con la dovuta cautela.

su quali browser il div.test avrà sfondo giallo?
Regola IE 5.x IE 6 IE 7 Opera 9 Firefox 2 Safari 2
* html div.test {background:yellow}SiSiNoNoNoNo
body>html div.test {background:yellow}NoNoSiSiSiSi
html>/**/body div.test{background:yellow}NoNoNoSiSiSi
div.test {background:yellow !important;background:green}NoNoSiSiSiSi
div.test {background /**/:yellow}SiNoSiSiSiSi
div.test {background:yellow !important;background /**/:green}NoSiSiSiSiSi
html>/**/body div.test{background: yellow}NoNoNoSiSiSi
html:lang(it) div.test{background: yellow}1NoNoNoSiSiSi
*:first-child+html div.test{background: yellow}NoNoSiNoNoNo
*|html div.test{background: yellow}2NoNoNoSiSiSi

Note

  1. il selettore di pseudo classe :lang presuppone che nell'HTML venga specificato il linguaggio del documento (es <html lang="it">)
  2. il selettore di tipo con namespace appartiene ai CSS di livello 3, e seppur sia definito e lecito nelle specifiche W3C in proposito, al momento non passa la prova del validatore CSS.