|
|||||||
|
|||||||
|
Concepts or properties are passed as unbuggy here if they are unbuggy apart from the 'special cases' - tables, forms, list items and HR, which are noted separately. In addition, bugs of accepting invalid syntax are not included.
Possible values are:
D | |
Destroyed - either so buggy that no correct behavior can be achieved from it - you can use it and get wrong behavior, but you do so at your peril; or destroyed through parsing errors - unimplemented, but with parsing bugs in the browser wrecking the feature. | |
S | |
That value or property is supported, subject to bugs general to the property or concept. | |
G | |
Glitch - buggy, but at worst annoying. | |
B | |
Buggy - a non-trivial bug, which although not necessarily always triggered, when triggered is serious. | |
N | |
Not supported | |
P | |
Partially supported - only supported on certain types of elements. | |
Y | |
Fully supported. |
In case you hadn't noticed, each bug is linked to a full text description. In addition, each concept is linked to an explanation; for example, :lang(X) links to a description of that selector in RichInStyle.com's CSS tutorial.
If you wish to load the description in a new window so that you don't leave this page, in most browsers you can right click the link and then click 'Open in new window'.
This document is an alternate version of the CSS bug table featuring a white background for ease of printing. To instead try a color-free one, click here. To return to the original document, click here.
Note that Mozilla 5 refers to M14.
Attachment of style to pages |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
---|---|---|---|---|---|---|
Linked style sheets | B | Y | B | Y | Y | Y |
Alternate style sheets | N | G & P | N | N | N | N |
STYLE | Y | Y | B | Y | Y | Y |
@import (without media) | N | Y | D (avoidable) | B | Y | Y |
@import (with media) | N | Y | D (avoidable) | N | N | B |
Media type - screen | Y | Y | N/A | Y | Y | Y |
Media type - all | N | Y | N/A | Y | Y | Y |
Media type - print | N | Y | N/A | Y | Y | N |
Media attribute on LINK | B | Y | D (applied regardless of medium) | Y | Y | Y |
@media | N | Y | D | D | Y | N |
Inline style | B (on IMG) | G | G | G | G | G |
Application of styles to pages |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
The universal selector (*) | N | Y | B | D | Y | B |
Class | Y | Y | P (can't contain '-') | Y | Y | Y |
Multiple classes | N | Y | N | D | D | Y |
IDs | P (#id works, X#id does not) | Y | P (can't contain '-'; #id works, X#id does not) | Y | Y | Y |
ID and class case-sensitivity | N | Y | N | N | N | Y |
:link | B | Y | B | Y | Y | B |
:visited | B | P (local links never marked as visited) | B | Y | Y | B |
:active | N | Y | N | B | B | N |
:hover | N | Y | D | B | B | N |
:focus | N | Y | D | N | N | N |
Multiple pseudo classes (e.g., A:link:hover) | N | Y | D | D | D | N |
:first-line | N | Y | D | N | N | P |
:first-letter | N | P (not margin-right) | D | N | N | B |
Does :pseudo.class work? (or only .class:pseudo) | N | Y | D | Y | Y | N |
:first-child | N | Y | D | N | N | N |
:lang(x) | N | N | D | N | N | N |
'Attribute set' selector; e.g., [title] | N | Y | N | N | N | N |
'Attribute is' selector; e.g., [title=x] | N | Y | N | N | N | N |
'Attribute includes' selector; e.g., [title~=a] | N | Y | N | N | N | N |
Dash match selector; e.g., [lang|=en] | N | N | N | N | N | N |
The descendant combinator ( ) | P | Y | B | Y | Y | P |
The child combinator (>) | N | Y | D | D | D | G |
The adjacent sibling combinator (+) | N | Y | D | D | D | B |
Key concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
SGML comments (<-- -->) | Y | Y | Y | Y | Y | B |
@charset | N | ? | D (avoidable) | N | ? | N |
Comments (/* */) | G | G | B | B | G | G |
Character escapes (\) | N | Y | N | N | N | N |
Inherit | D | Y | D | N | N | B |
!important | N | Y | D (causes declaration to be ignored) | Y | Y | Y |
Order sorting of rulesets | Y | Y | B | Y | Y | Y |
Do the HTML and BODY selectors it work if their opening tags are omitted? | N | Y | N | Y | Y | Y |
Use of HTML selector | N | Y | Y | Y | Y | Y |
Use of NOSCRIPT element in HTML | D | Y | Y | Y | Y | Y |
Units |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Em | D | Y | D (as 1pt) | Y | Y | Y |
Ex | D | D | D (as 1pt) | D (as .5em) | D (as .5em) | D (as .5em) |
In, mm, cm, px, pt, pc | Y | Y | Y | Y | Y | Y |
Color and backgroundColor referencing methods |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
3 or 6 digit hexadecimal format (#fff or #ffffff) | Y | Y | Y | Y | Y | Y |
Rgb percent format ( rgb(100%, 0%, 100%) ) | Y | Y | N | Y | Y | Y |
Rgb decimal format ( rgb(255, 16, 39) ) | Y | Y | N | Y | Y | Y |
Css named colors (e.g., red) | Y | Y | Y | Y | Y | Y |
Non-css named colors (e.g., aliceblue) | Y | Y | Y | Y | Y | N |
UI colors (e.g., appworkspace) | D | Y | D | Y | Y | N |
Background concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Background attachments | N | Y | Y | Y | Y | N |
Background colors | B | Y | B | Y | Y | G |
Background colors - transparent | B | Y | N | Y | Y | Y |
Background images - url() | B | Y | B | Y | Y | P (block elements only); B (avoid animated) |
Background images - none | B | Y | N | Y | Y | B |
Background positions | N | B | B & P | B | Y | Y |
Background repeats - BODY, HTML | Y | Y | Y | Y | Y | Y |
Background repeats - TABLE, TD, TH | S | Y | Y | Y | Y | B |
Background repeats - other elements | S | Y | N | Y | Y | B |
Canvas backgrounds - different on BODY and HTML | N | B | N | N | Y | N |
Background and color properties - supported, subject to the bugs above, or extra bugs? |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Background | B | S | B | S | Y | G |
Background-attachment | N | Y | N | Y | Y | N |
Background-color | S | Y | N | Y | Y | S |
Background-image | S | Y | N | Y | Y | S |
Background-position | N/A | S | N | S | Y | Y |
Background-repeat | S | Y | N | Y | Y | S |
Color | S | Y | S | Y | Y | S |
Font propertiesFont concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
UI fonts - all names | N | D | D | G | G | N |
UI fonts - caption, icon, menu | N | N/A | D | S | S | N |
UI fonts - message-box, status-bar, small-caption | N | N/A | D | N | N | N |
UI fonts - messagebox, statusbar, smallcaption | N | N/A | D | S | S | N |
Font families - named fonts that lack the normal (a-z, A-Z, 0-9, etc.) glyphs (e.g., WingDings) | B | Y | D | D | D | N |
Font families - named fonts that do contain the normal (a-z, A-Z, 0-9, etc.) glyphs (e.g., Arial) | Y | Y | Y | Y | Y | Y |
Font families - alternate font lists (e.g., font: 16px Arial, sans-serif) | Y | Y | B | Y | Y | Y |
Font families - quoting of fonts (e.g., font-family: "Times New Roman") | Y | Y | B | Y | Y | Y |
Font families - serif | Y | Y | Y | Y | Y | Y |
Font families - sans-serif | Y | Y | Y | Y | Y | Y |
Font families - monospace | Y | Y | Y | Y | Y | Y |
Font families - cursive | Y | Y | Y | Y | Y | Y |
Font families - fantasy | Y | Y | Y | Y | Y | Y |
Font sizes - cm, mm, in, px, pt, pc | Y | Y | Y | Y | Y | Y |
Font sizes - %, em | D | Y | D | Y | Y | Y |
Font sizes - smaller | G | G | N | B | Y | G |
Font sizes - larger | B | Y | N | Y | Y | G |
Font sizes - keywords (xx-small to xx-large) | Y | Y | Y | B | B | Y |
Font size adjustment | N | N | N | N | N | N |
Font weights - 100 to 900 | Y | B (100-500 = normal, 600-900 = bold) | N | Y | Y | Y |
Font weights - bold | Y | Y | Y | Y | Y | Y |
Font weights - normal | Y | Y | N | Y | Y | Y |
Font weights - bolder | N | D (as bold) | N | G | G | G |
Font weights - lighter | N | Y | Y | G | G | G |
Font variants - small-caps | N | Y | N | B | B | G |
Font variants - normal | N/A | Y | N/A | B | B | Y |
Font stretching | N | N | N | N | N | N |
Font styles - normal | Y | Y | N | Y | Y | Y |
Font styles - italic | Y | Y | Y | Y | Y | Y |
Font styles - oblique | N | D (as italic) | N | D (as italic) | D (as italic) | D (as italic) |
Line heights - all units | B | G | B | G | G | G |
Line heights - <number> (e.g., 1.2) | D | S | D (as px) | S | S | S |
Line heights - normal | B | Y | D | S | S | S |
Line heights - % | D | S | S | B | S | S |
Line heights - em | S (=D) | S | D | S | S | S |
Line heights - pt, pc, cm, mm, in | B | S | S | S | S | S |
Line heights - px | S | S | S | S | S | S |
Font properties - supported subject to the bugs above, or additional bugs? |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Line-height | S | S | S | S | S | S |
Font-family | S | Y | B | S | S | S |
Font-style | S | S | S | S | S | S |
Font-size | S | S | S | S | S | S |
Font-size-adjust | N | N | N | N | N | N |
Font-stretch | N | N | N | N | N | N |
Font-style | S | S | S | S | S | S |
Font-variant | N | Y | N | S | S | S |
Font-weight | S | S | S | S | S | S |
Font | B | S | B | S | S | S |
Text properties |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Text-align - left, right, center | Y | Y | Y | Y | Y | Y |
Text-align - justify | Y | N | N | Y | Y | Y |
Text-decoration - all values | G | G | B | G | G | B |
Text-decoration - underline, line-through | S | S | S | S | S | S |
Text-decoration - overline | N | S | N | S | S | S |
Text-decoration - blink | S | S | N | N | N | N |
Text-decoration - multiple values (e.g., t-d: line-through blink) | S | S | N (note) | S | S | S |
Text-indent - all units | Y | Y | G (only inherited to first child) | P (not inherited; not BODY) & G | G | G |
Text-indent - % | B | Y | B | B | S | S |
Text-indent - other units | S | Y | S | S | S | S |
Text-shadow | N | N | N | N | N | N |
Text-transform - all values | P (not inherited) | Y | N | Y | Y | Y |
Text-transform - all values: accented characters | N | B | N | Y | B | Y |
Text-transform - uppercase, lowercase | S | S | N | Y | Y | Y |
Text-transform - capitalize | S | S | N | Y | Y | G |
Vertical-align - middle | B & P(IMG only) | Y | N | P (not text) & B | P (not text) & B | G |
Vertical-align - text-top, text-bottom | P (IMG only) | Y | N | G & P (not text) | G & P (not text) | G |
Vertical-align - top, bottom | B & P (IMG only) | Y | N | P (not text) | P (not text) | Y |
Vertical-align - sub, super | N | G | N | P (on text) | P (on text) & G | G |
Vertical-align - length/% | N | Y | N | N | N | G |
White-space - pre | Y | Y | N | N | N | N |
White-space - normal | B | Y | N | N | N | N |
White-space - nowrap | N | Y | N | N | N | N |
Word-spacing | N | Y | N | N | N | B |
Letter-spacing | N | Y | N | Y | N | B |
Lists |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Display: list-item | D | B | N | N | N | N |
List style images (via list-style-image or list-style) | N | Y | N | B | B | Y |
List style types (via list-style-type or list-style) | B | Y | N | Y | Y | Y |
List style types - upper-roman, lower-roman, decimal, upper-alpha, lower-alpha | B | G | N | G | G | G |
List style types - decimal-leading-zero, lower-greek, upper-latin, lower-latin | N | G | N | N | N | N |
List style types - upper-greek | N | N | N | N | N | N |
List style types - armenian, georgian, cjk-ideographic, hiragana, hiragana-iroha, katakana, katakana-iroha | N | Y | N | N | N | N |
List style types - square, disc, circle | B | Y | N | Y | Y | Y |
List style types - none | B | Y | N | Y | Y | Y |
List style positions (via list-style or list-style-position) | N | Y | N | N | Y | Y |
Styling of list items | D | P (not clear) | B | G | G | G (on floats) |
Margin bugsMargin concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Left margins (via margin-left or margin) | B | Y | B | Y | Y | G |
Right margins (via margin-right or margin) | B | Y | B | B | B | G |
Top margins (via margin-top or margin) | B | Y | B | Y | Y | Y |
Bottom margins (via margin-bottom or margin) | B | Y | N | Y | Y | Y |
Margins on inline elements | D | Y | N | P (images); G | P (images); G | P (left and right only) |
Margin units |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Auto | N (as 0) | Y | N (as 0 = D) | N (as 0) | N (as 0) | B (on replaced and table elements) |
% | D | Y | B | B | S | S |
Em | S (=D) | Y | D (as px) | S | S | S |
Px | S | Y | S | S | S | S |
Pt, pc, in, mm, cm - on vertical margins | B | Y | S | S | S | S |
Pt, pc, in, mm, cm - on horizontal margins | S | Y | S | S | S | S |
Padding bugsPadding concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Left and right padding (via padding-left, padding-right or padding) | Y | Y | N | Y | Y | G |
Top and bottom padding (via padding-top, padding-bottom or padding) | Y | Y | N | G | Y | G |
Padding on inline elements | D | Y | N | N | N | P (horizontal padding only) |
Padding units |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
% | B | Y | N/A | B | S | S |
Em | S (=B) | Y | N/A | S | S | S |
Px | S | Y | N/A | S | S | S |
Pt, pc, in, mm, cm - vertical padding | B | Y | N/A | S | S | S |
Pt, pc, in, mm, cm - horizontal padding | S | Y | N/A | S | S | S |
Border bugsBorder concepts |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Border widths | B | Y | N | G | G | G |
Borders on inline non-replaced elements (e.g., <B>) | D | Y | N | N | N | G |
Borders on inline replaced elements (e.g., <IMG>) | D | Y | N | Y | Y | D |
Borders on BODY/HTML | D | Y | N | D | D | D |
Border styles - solid | Y | Y | N | Y | Y | Y |
Border styles - dotted, dashed | D (as solid) | Y | N | D (as solid) | D (as solid) | Y |
Border styles - double | B | Y | N | Y | Y | Y |
Border styles - inset, outset, groove, ridge | Y | Y | N | G (requires a non-dark color to be visible) | Y | Y |
Border styles - hidden | D (as outset) | Y | N | N | Y | D |
Border colors - specified colors | Y | Y | N | Y | Y | Y |
Border colors - unspecified colors (should default to value of color property) | D (as black) | Y | N | Y | Y | Y |
Border colors - transparent | Y | Y | N | Y | Y | Y |
Border units |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Em | S (=D) | Y | N/A | S | S | Y |
Px | S | Y | N/A | S | S | S |
Pt, pc, in, mm, cm | B | Y | N/A | S | S | S |
% (suggested extension) | B | N | N/A | N | N | S |
Border properties |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Border-left-style, border-right-style, border-top-style, border-bottom-style | N | Y | N | S | S | S |
Border-style | S | Y | N | S | S | S |
Border-left-color, border-right-color, border-top-color, border-bottom-color | N | Y | N | S | S | S |
Border-color | S | Y | N | S | S | S |
Border-left-width, border-right-width, border-top-width, border-bottom-width | S | Y | N | S | S | S |
Border-width | S | Y | N | S | S | S |
Border-left, border-right, border-top, border-bottom | N | Y | N | S | S | S |
Border | S | Y | N | S | S | S |
Box sizing properties |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Height | N | Y | N | P (DIV only) & B | G | G |
Height on replaced elements (e.g., IMG) | N/A | Y | N/A | Y | Y | Y |
Min-height | N | Y | N | N | N | N |
Max-height | N | Y | N | N | N | N |
Width - all units | B | Y | N | G & P (of block elements, only DIV) | G | G |
Width (%) | D | Y | N/A | S | S | S |
Width on replaced elements (e.g., IMG) | N | Y | N/A | Y | Y | D |
Min-width | N | Y | N | N | N | N |
Max-width | N | Y | N | N | N | N |
Display |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Display - none | Y | Y | N | Y | Y | Y |
Display - block | D | Y | N | N | Y | Y |
Display - inline | D | Y | N | N | Y | D |
Display - run-in | N | N | N | N | N | N |
Display - compact | N | N | N | N | N | N |
Positioning properties |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Float - left, right, none | B | B | N | B | B | B |
Clear - left, right, both | B | Y | N | B | B | Y |
Position: absolute | B | Y | N | P (inline, P and TABLE only) | Y | N |
Position: fixed | N | B | N | N | N | N |
Position: relative | B | Y | N | Y | Y | N |
Left, top | S | S | N/A | Y | Y | N |
Units - % | B | S | N/A | Y | Y | N |
Units - other units | S | S | N/A | S | Y | N |
Right, bottom | N | S | N/A | N | ? | N |
Dynamic effects |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Outline colors (via outline-color or outline) | N | Y | N | N | N | N |
Outline colors - invert | N | N | N | N | N | N |
Outline styles (via outline-style or outline) | N | Y | N | N | N | N |
Outline widths (via outline-width or outline) | N | B | N | N | N | N |
Cursor - default, text, wait | N | Y | N | Y | Y | N |
Cursor - n-resize, e-resize, w-resize, s-resize | N | Y | N | B | B | N |
Cursor - ne-resize, nw-resize, sw-resize, se-resize | N | N | N | B | B | N |
Cursor - crosshair, help, move | N | N | N | Y | Y | N |
Cursor - auto | N | N | N | B | B | N |
Cursor - pointer | N | Y | N | N | N | N |
Cursor - hand (proprietary value) | N | N | N | Y | Y | N |
Cursor - url | N | N | N | N | N | N |
Visibility - hidden | Y (some versions) | Y | N | Y | Y | N |
Visibility - visible to override inherited hidden | N | Y | N/A | N | N | N/A |
Z-index | N | Y | N/A | Y | Y | N |
Overflow - scroll, auto, hidden | N | B | N | B | B | N |
Clip | N | P (when overflow: scroll only) | N | N | N | N |
Generated content |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
:before and :after pseudo-elements | N | Y | N | N | N | N |
Content - "string" | N | Y | N | N | N | N |
Content | N | Y | N | N | N | N |
Counter-increment | N | N | N | N | N | N |
Counter-reset | N | N | N | N | N | N |
Quotes | N | N | N | N | N | N |
Display: marker | N | N | N | N | N | N |
Marker-offset | N | N | N | N | N | N |
Tables |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Tables - inheritance of style | D | B | D | B | B | G (not text-align) |
Tables - styling of table elements | B | B | B | B | B | P & G |
Text-align - string (e.g., text-align: ".") | N | N | N | N | N | N |
Display: table, display: inline-table, display: table-row-group, display: table-column-group, table-header-group, table-footer-group, table-column, table-row, table-cell, table-caption | N | D | N | N | N | N |
Visibility: collapse | N | P (table elements only) | N | N | N | N |
Table-layout | N | Y | N | N | B | N |
Border-collapse | N | D | N | N | D | N |
Border-spacing | N | B | N | N | N | N |
Empty-cells | N | Y | N | N | N | N |
Caption-side - bottom, top | N | Y | N | N | N | N |
Caption-side - left, right | N | N | N | N | N | N |
Element-specific bugs |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
Forms | B | B | N (g) | P & G | P & G | B & P |
Horizontal Rules | P & G | G | Y | B | B | P |
Paged media |
||||||
Feature | NN4 | Mozilla5 | IE3 | IE4 | IE5 | OP3.6 |
@page | N | N | N | N | ? | N |
size | N | N | N | N | ? | N |
marks | N | N | N | N | ? | N |
page-break-before, page-break-after - always, never | N | N | N | Y | Y | N |
page-break-before, page-break-after - left, right | N | N | N | D (as always) | D (as always) | N |
page-break-inside | N | N | N | N | N | N |
orphans, widows | N | N | N | N | ? | N |
page | N | N | N | N | ? | N |
:left, :right, :first | N | N | N | N | ? | N |
Copyright © RichInStyle.com 2000; all rights reserved. See copyright document for terms of use. Please visit Bukit Lawang flood appeal.