Codebitch : Click to return to MacEdition homepage
 

Abridged Guide to CSS2 Support

Welcome new readers! This Guide was first published in January 2003, and has since been updated for Safari beta 2, OmniWeb 4.5 and MSN for Mac OS X. Results for Gecko are for Camino 0.7 unless indicated otherwise. For more information about specific bugs and glitches in Mac browsers (Safari including version 1.1 and 1.2, OmniWeb, iCab), see the MacEdition Guide to CSS2 Support in Mac-only browsers. Please note that this page is only a summary. More specific information can be found in the previously mentioned MacEdition Guide for Mac-only browsers, and at Netscape Dev/Edge for other browsers. You may also be interested in the MacEdition Guides to CSS Support for Tables, CSS Bugs in IE5/Mac and CSS Crasher Bugs in Netscape 4.

Code What it means
U Untested
OK OK: supported on all relevant tags.
P Partial: correctly implemented but only for subset of required elements or properties.
Q Quirky: works in most cases, but some odd bugs.
N Not supported: doesn't work, but doesn't destroy content either
B Buggy: works in ways that compromise the aesthetics.
D Destroyed: obscures or otherwise messes up content.
Property Windows IE 6 MSN for Mac OS X Mac IE 5 Gecko Opera 7 (see docs) Safari 1.2 Safari 1.0, Konqueror, OmniWeb 4.5 (see docs) Omniweb 4.05 OmniWeb 4.1 beta 2+ to 4.2 inclusive iCab 2.6 and above
Form elements styled? ok ok ok ok (NB Opera 6/Mac has only partial support) P (some font-sizing) No. Aqua styling Not known No. Aqua styling P: See notes
background ok OK ok ok ok OK OK D Q Glitches
background-attachment B OK ok ok ok OK OK (v.60+) N N OK
background-color ok OK ok ok OK OK OK P Q Q
background-image ok OK ok ok OK OK OK Only Body OK OK
background-position ok OK ok ok OK OK OK Only Body Only Body OK
background-repeat ok OK ok ok OK OK OK Only Body Q OK
border-collapse ok OK N ok OK OK N N N N
border-spacing N OK N ok OK OK N N N? N
border ok OK ok ok OK OK OK N B P
border-bottom-color ok OK ok ok OK OK OK N P P
border-bottom-style OK. NB dotted is  dashed OK ok ok OK OK  OK N B P
border-bottom-width ok OK ok ok OK OK OK N B P
border-color ok OK ok ok OK OK OK N P P
border-left ok OK ok ok OK OK OK N B P
border-left-color ok OK ok ok OK OK OK N P P
border-left-style OK. NB dotted is  dashed OK ok ok OK OK OK N B P
border-left-width ok OK ok ok OK OK OK N B P
border-right ok OK ok ok OK OK OK N B P
border-right-color ok OK ok ok OK OK OK N P P
border-right-style OK. NB dotted is  dashed OK ok ok OK OK OK N B P
border-right-width ok OK ok ok OK OK OK N B P
border-style OK. NB dotted is  dashed OK ok ok OK OK OK B P
border-top ok OK ok ok OK OK OK N B P
border-top-color ok OK ok ok OK OK OK N P P
border-top-style OK. NB dotted is  dashed OK ok ok OK OK OK N B P
border-top-width ok OK ok ok OK OK OK N B P
border-width ok OK ok ok OK OK OK N P P
bottom ok OK ok ok OK OK OK B N: no positioning
caption-side   OK P (top/bottom only)  OK
[Moz1.4+: see below]
  P Q N N N
clear ok OK q ok OK OK OK N OK N
clip ok OK p ok OK P N
color  OK OK  OK OK  OK OK OK OK (but see background) OK OK
content N N N OK OK OK B N N N
counter-increment n N n n OK N N N N N
counter-reset n N n n OK N N N N N
cursor ok OK ok b   OK N N N N
direction OK N N OK N OK OK N N N
display P (not run-in)   p p P (not marker) OK P P P N
empty-cells n OK n ok OK OK N N N N
float OK  Q Q OK  OK OK OK B Q B
font ok OK ok ok OK OK OK OK OK OK
font-family ok OK ok ok OK OK OK OK OK OK
font-size ok OK ok ok OK OK Q Q Q OK
font-size-adjust n N n N N N N N N N
font-stretch n N n N N N N N N N
font-style ok OK ok ok ok OK OK OK OK OK
font-variant ok OK ok ok ok OK P N N N
font-weight ok OK ok ok ok OK OK OK OK OK
height ok OK ok ok OK OK OK B B
left ok OK ok ok OK OK OK B Q N
letter-spacing ok OK ok ok OK OK OK N N OK
line-height OK OK ok ok OK OK OK P B OK
list-style   OK     OK OK OK N N P
list-style-image ok OK ok ok OK OK OK N N N
list-style-position ok OK ok ok OK OK OK N N Q
list-style-type p p: only CSS1 values p b p: only CSS1 values OK OK N N P
margin ok OK ok ok OK OK OK P P Q
margin-bottom Q (if neg) OK ok ok OK OK OK P Q Q
margin-left ok OK ok ok OK OK OK P P Q
margin-right ok OK ok ok OK OK OK P Q Q
margin-top ok OK ok ok OK OK OK P Q Q
marker-offset n N n n n N N N? N
max-height n OK N ok OK N N N N N
max-width n OK N ok OK P P N N N
min-height ok OK N ok OK N N N N N
min-width n OK n ok OK P P N N N
outline n OK ok P (form only) OK P P N N N
outline-color n OK ok P OK P P N N N
outline-style n OK ok P OK P P N N N
outline-width n OK ok P OK P P N N N
overflow ok   Q ok ok OK P N N
padding OK OK ok ok ok OK OK N B P
padding-bottom OK OK ok ok OK OK OK N B P
padding-left OK OK ok ok OK OK OK N B P
padding-right OK OK ok ok OK OK OK N B P
padding-top OK OK ok ok OK OK OK N B P
position Q (not fixed) Q (whitespace bugs) Q ok ok OK OK D D N
quotes n OK n P: not nested   N N N N N
right ok OK ok ok OK OK ok B Q N
table-layout  ? OK  ?  ? OK Ok? OK? N N Q
text-align ok OK ok ok OK OK OK P P OK
text-decoration ok OK ok ok OK OK OK P P OK
text-indent ok OK ok ok OK OK OK N B OK
text-shadow n N n N N OK Version 1.1 only N N N
text-transform OK OK ok ok ok Q Q N N OK
top ok OK ok ok OK OK ok B N
unicode-bidi OK N N OK N N N N N N
vertical-align OK OK OK OK OK OK OK Q Q N
visibility P: not collapse OK P: not collapse P: not collapse P: not collapse P: collapse not complete P: not collapse N N
white-space ok OK ok ok OK Q Q Q OK
width ok OK ok ok OK OK ok B B B
word-spacing ok OK ok ok OK OK OK N N OK
z-index OK OK ok ok OK OK * OK N
Selectors
Direct-child selector (>) N OK ok ok ok OK OK D D N
attribute selectors N OK N ok ok OK OK D D D
Sibling selector (+) (test page) N OK OK OK ok OK OK D D N
Multiple classes OK OK OK OK ok OK OK N N OK

:first-line pseudoclass

OK OK OK OK ok OK OK N N N
:first-letter pseudoclass OK OK OK OK ok OK OK N N N
:first-child pseudoclass (CSS2) (test) N OK OK OK ok OK OK N N N
:link, :visited pseudoclasses OK OK OK OK ok OK OK N OK OK
:lang pseudoclass N OK OK OK N N N D N
:hover pseudoclass P: a elements only P: a elements only P: a elements only OK ok OK OK N N N
Linking, importing and other features
@import url("../file.css") OK OK OK OK ok OK OK OK OK OK
@import url(../file.css); OK OK OK OK ok OK  OK OK OK OK
@import url(../hide1b.css) screen; OK OK OK OK ok OK  OK OK OK OK
@import "../hide2.css"; OK OK OK OK ok OK  OK N OK OK
media attributes OK OK OK OK ok OK Q N N  
@media rules OK OK N OK ok OK OK N N  N
Hiding methods (see also @import and selectors above): see dithered.com for more hiding methods
Tantek box-model hack OK OK OK OK ok OK  OK Q Q OK
High-pass filter (including inline version) OK OK OK OK ok OK Linked only in 1.0, ok in 1.1   Q B
Caio’s hack OK OK OK OK ok OK  OK   OK OK
Be Mean to Opera Hack (test)  B OK  OK  OK ok OK  B in 1.0, OK in 1.1   B B
Owen Hack (test)  B OK  OK  OK ok OK  OK   B B

Notes

About this page

This page was compiled by CodeBitch and hosted by MacEdition, based on a compilation of other such support charts (Window IE, Mac IE, Gecko) and (for Mac-only browsers especially) analysis of the CSS1 and (some of the) CSS3 Selectors Test Suites provided by the W3C, CSS2 Test pages provided by Richinstyle and Eric Meyer, and CodeBitch’s own tests of CSS compatibility, with added information from pages provided by Johannes Koch, Albin.Net, Ian Hickson and David Baron. Lower-case codes indicate properties not personally verified by CodeBitch. 

No warranties are given on the correctness of this page, since this depends both on the correctness of the tests and correctness of my interpretation of the tests. All reasonable efforts have been made to ensure accuracy. Corrections, clarifications and updates for new versions of these browsers will be gratefully appreciated. Thanks are due to Matt McIrvin, the rest of the MacEdition staff, and numerous dedicated web developers with Macs, who have sent comments, diagnoses and screenshots.

Last Modified: 11 February 2004 (11:45AM AEDST)
CodeBitch