Comparison of layout engines (Cascading Style Sheets)

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The following tables compare CSS compatibility and support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.

Explanation of the tables [edit]

Engine nomenclature [edit]

Rather than the names of web browsers, the names of the underlying engines are used. The browsers that use the various engines are listed below.

Layout engine Release version Preview version Used by
Amaya 11.3.1 11.3-pre Amaya
Blink Chromium/Chrome (28+), Opera (14+) and Yandex
Gecko 20.0 21.0 All Mozilla software, including Firefox; SeaMonkey and Galeon; Camino; K-Meleon; Flock (up to 2.x); Debian IceWeasel; GNU IceCat (formerly GNU IceWeasel); Icedove, Iceape and Iceowl; Fennec. Also used by the Maple platform in 2010 and 2011 Samsung "SmartTV" devices which are based on the build used in Firefox 3.0.
KHTML N/A Konqueror
Presto 2.12.388 Opera; Opera Mobile, Nintendo DS & DSi Browser; Internet Channel
Tasman (IE 5.2.3 for Mac) none (aborted in 2003) Internet Explorer 5+ for Mac OS X
Trident 6.0 (IE 10) 6.0 (IE 10) Internet Explorer and other Internet Explorer shells like Maxthon (Microsoft Windows operating systems only), Windows Phone 8
WebKit 534.20 r146740 Tizen (both OS and browser), Safari (both desktop and mobile), Google Chrome, Maxthon 3, Shiira, iCab 4, OmniWeb 5.5+, Web, Adobe AIR, Midori, Adobe Dreamweaver CS4 and CS5, Android browser, Palm webOS browser, Symbian S60 browser, OWB, Steam, Rekonq, Arora, Flock (version 3+), RockMelt, Dolphin Browser, Sleipnir, Konqueror, rekonq. Used by the LG Smart TV platform to enable web content on TVs.

In Konqueror, the user can switch layout engine.

Values [edit]

Values indicate the level of support in the most recent version of the layout engine, or (if a version number is given) in the specified version. Version numbers without any other value indicate the version at which the layout engine first fully supported the feature.

Value Meaning
Yes Indicates that the layout engine fully supports this property/element when valid values are used.
No Indicates that the property/element is completely ignored.
Partial Indicates that the property/element is understood, but that not all values are supported. Supported values are implemented correctly.
Incorrect Indicates that the property/element is understood, but that it is not implemented correctly in all cases.
Experimental Indicates that the property/element is understood, but supported under an alternate name. May be incomplete or buggy.
Dropped Indicates that the property/element is no longer supported.
Nightly build Indicates that the property/element is supported to some extent in an experimental/nightly build. Future support is expected.
Depends Indicates that the property/element is supported only on certain platforms, or if certain settings are configured.

Grammar and rules [edit]

Trident Gecko WebKit KHTML Presto Prince XML
CSS2 !important Weight increasing 7.0 1.0 85 Yes 1.0 Yes
/*Comment*/ Comments 3.0 1.0 85 Yes 1.0 Yes
@import Import stylesheet 8.0 1.0 Yes Yes 1.0 2.1
@charset Character set 5.5 1.0 Yes 4.2.3 1.0 Yes
@media Media-specific rules 5.5 1.0 Yes Yes 1.0 5.1
@page For paged media 8.0 19.0[g 1] Nightly Build[w 1] No 1.0 6.0
CSS3 @namespace Namespace declaration 9.0[t 1] 1.0 Yes Yes 1.0 5.0
@document Restriction by URLs No 6.0 No No No No
@keyframes Animation key 10.0[t 2] 16.0 Experimental No 2.12 No
@font-face Define font 9.0[t 1] 1.9.1 525 4.3 2.2 6.0
@supports Conditional Rules No 17.0 Nightly build No 2.12 No
@phonetic-alphabet Phonetic pronunciation No No No No No No
@region Region flow segment No No Nightly build No No No
@counter-style Custom Counter Styles No No No No No No
@top-left-corner Margin boxes [spec 1] No No No [w 2] No No No
@top-left
@top-center
@top-right
@top-right-corner
@bottom-left-corner
@bottom-left
@bottom-center
@bottom-right
@bottom-right-corner
@left-top
@left-middle
@left-bottom
@right-top
@right-middle
@right-bottom
Trident Gecko WebKit KHTML Presto Prince XML

Trident grammar and rule notes [edit]

  1. !important — Prior to 7.0, !important doesn't override rules defined later in the same declaration block.
  2. @import — Prior to 8.0, media type support is broken. For @import <URL> <MEDIA>, IE requests as the URL "<URL> <MEDIA>" and will include the url() token and/or quotes in the URL, too, if present. Cannot import more than 35 stylesheets.

Presto grammar and rule notes [edit]

  1. @import — Whilst Gecko, WebKit and iCab download all media stylesheets immediately, Opera only downloads handheld, print, projection and screen media, as well as speech if "voice" feature is enabled and TV, on TV devices. Text browser emulation mode is only a user stylesheet, so it does not switch to tty media type. This is consistent with older text browsers, which do not respect any CSS.

Selectors [edit]

Trident Gecko WebKit KHTML Presto Prince XML
Element selectors[spec 2]
CSS2 * Universal 7.0 1.0 85 Yes 1.0 Yes
E Element 4.0 1.0 85 Yes Yes
E.class Class 7.0 1.0 85 Yes Yes
E#id ID 4.0 1.0 85 Yes Yes
CSS3 ns|E Namespaced 9.0 1.0 Yes Yes Yes
Relationship selectors
CSS2 E F Descendant 4.0 1.0 85 Yes 1.0 Yes
E > F Child 7.0 1.0 85 Yes Yes
E + F Direct adjacent 7.0 1.0 85 Yes Yes
CSS3 E ~ F Indirect adjacent 7.0 1.7 412 3.3.2 2.0 Yes
CSS4 E /for/ F Reference combinators No No No No No No
E! > F Subject No No[g 2] No No No No
Attribute selectors
CSS2 E[attr] Has 7.0 1.0 85 Yes 1.0 Yes
E[attr="value"] Equals 7.0 1.0 Yes Yes Yes
E[attr~="value"] Contains (space-separated) 7.0 1.0 Yes Yes Yes
E[attr|="value"] Contains (hyphen-separated) 7.0 1.0 Yes Yes Yes
CSS3 E[attr^="value"] Begins with 7.0 1.0 Yes 3.4 1.0 Yes
E[attr$="value"] Ends with 7.0 1.0 Yes 3.4 2.0 Yes
E[attr*="value"] Contains substring 7.0 1.0 Yes 3.4 Yes
E[ns|attr] Namespaced 7.0 1.0 Yes 3.4 No
Pseudo-classes
CSS2 E:link Unvisited hyperlink 3.0 1.0 85 Yes 1.0 6.0
E:visited Visited hyperlink 3.0 1.0 85 Yes Yes
E:active Active 8.0 1.0 85 Yes Yes
E:hover Mouseover 7.0 1.0 419.3 Yes Yes
E:focus Focused 8.0 1.0 Yes Yes Yes
E:first-child First child 7.0 1.0 85 Yes Yes
E:lang() Language 8.0 1.2 525 3.4 Yes
@page:first First page 8.0 No[g 3] Yes[w 3] No Yes
@page:left Left page
@page:right Right page
CSS3 E:root Root 9.0 1.0 85 3.4 2.1 Yes
E:not() Negation
E:empty Empty 1.8 412
E:first-of-type First child of type 1.9.1 525
E:last-child Last child 1.0
E:last-of-type Last child of type 1.9.1
E:only-child Only child 1.8
E:only-of-type Only child of type 1.9.1
E:nth-child Nth child 1.9.1
E:nth-last-child Nth last child 1.9.1
E:nth-of-type Nth child of type 1.9.1
E:nth-last-of-type Nth last child of type 1.9.1
E:target Target 1.3 2.5 No
E:enabled Enabled state 1.8 2.0
E:disabled Disabled state 1.8
E:checked Checked state 1.0
E:indeterminate Indeterminate state 1.9.2 522 No No
E:default Default No 1.9 Yes[w 4] 4.3 2.0
E:valid Valid 10.0[t 3] 1.8 Yes[w 5] No
E:invalid Invalid 10.0[t 4]
E:in-range In range No Yes[w 6]
E:out-of-range Out of range No
E:required Required 10.0[t 5] 2.0[g 4] Yes[w 7]
E:optional Optional 10.0[t 6]
E:read-only Read-only No Experimental[g 5] No Incorrect Incorrect
E:read-write Read and write No
CSS4 E:not(s1, s2) Negations No No No No No No
E:matches(s1, s2) Matches-any No [g 6]
E[foo="bar" i] Case-sensitivity No
E:dir(ltr) Directionality 17[g 7]
E:lang(zh, *-hant) Languages No
E:any-link Hyperlink
E:local-link Local link
E:local-link(0) Local link
E:scope Contextual reference 20[g 8]
E:current Time-dimensional : current No
E:current(s) Time-dimensional : current
E:past Time-dimensional : past
E:future Time-dimensional : future
E:indeterminate Indeterminate-value
E:nth-match(n of selector) Nth child of
E:nth-last-match(n of selector) Nth last child of
E:column(selector) Column
E:nth-column(n) Nth column
E:nth-last-column(n) Nth last column
Pseudo-elements
CSS2 E:first-letter First letter 9.0 1.0 85 Yes 1.0 5.0
E:first-line First line Partial No[r 1]
E:before Before 8.0 1.9.1 Partial Yes
E:after After
CSS3 E::before Double colon notation 9.0 1.9.1 Partial 3.4 1.0 Yes
E::after Double colon notation
E::first-letter Double colon notation 1.5 85
E::first-line Double colon notation Partial No[r 1]
E::marker [1] list marker No No No No No No
 ? E::selection Selection 9.0 Experimental[g 9] 412 3.4 2.1 No
Trident Gecko WebKit KHTML Presto Prince XML

General selector notes [edit]

  1. :read-only and :read-write — Both Presto and KHTML handle the case of the contenteditable attribute incorrectly.
  2. ::selection has been removed from the CSS3 specification, but is still supported by many browsers.

Trident selector notes [edit]

  1. :active — Prior to 8.0, :active is only supported on anchor elements.
  2. :hover — Prior to 7.0, :hover is only supported on anchor elements.
  3. .one.two — Prior to 7.0, only .two class selector was taken into consideration.
  4. * — Prior to 7.0 this was treated as a single or no element.
  5. [attr] — Matches every td and th in a table when the attribute is colspan (regardless of whether any actually have a colspan attribute).[t 7] This may not actually be a bug, as ambiguity exists in the specification.[t 8]
  6. :first-letter, :first-line — Prior to IE9 in 6.0, combining :first-letter rules with others may be problematic.[t 9] In 8.0, rules with !important are ignored inside :first-line and :first-letter declarations.[t 10]

Gecko selector notes [edit]

  1. (:):before, (:):after — CSS2.0 behavior : some properties are unimplemented prior to 1.9.1.[g 10]

WebKit selector notes [edit]

  1. :lang() — Only detected when explicitly present on element being tested, attribute not inherited.
  2. (:):first-linetext-transform doesn't apply with this pseudo-element.[w 8]
  3. (:):before/after — some styles can't be applied to :before and :after pseudo-elements, such as animations and transitions.[w 9]

Presto selector notes [edit]

  1. :target — Prior to 2.5, styles aren't applied when navigating using back and forward buttons.

Properties [edit]

Trident Gecko WebKit KHTML Presto Prince XML
Box Model[spec 3]
CSS2 margin 9.0 1.0 85 Yes 1.0 Yes
padding 4.0 1.0 85 Yes Yes
width 4.0 1.0 85 Yes Yes
height 4.0 1.0 85 Yes Yes
float 5.0 1.0 85 Yes Yes
clear 5.0 1.0 85 Yes Yes
display 8.0 1.9 85 Yes Yes
min-width 7.0 1.0 Partial Yes 5.0
max-width 7.0 1.0 Partial Yes 5.0
min-height 7.0 1.7 Partial 3.3.2 5.0
max-height 7.0 1.7 Partial 3.3.2 5.0
visibility 9.0 1.8 Partial Partial 2.5 Partial
Overflow [spec 4]
CSS2 overflow 9.0 1.0 85 3.2 1.0 5.0
CSS3 overflow-x 9.0 1.8 525 3.5.6 2.1 5.0
overflow-y
max-lines No No No No No No
Borders[spec 5]
CSS2 border 4.0 1.0 85 Yes 1.0 3.0
border-color 7.0
border-style 8.0
border-width 4.0
border-top 5.5
border-right
border-bottom
border-left
CSS3 border-radius 9.0[t 1] 2.0[g 11] 533[w 10] Experimental 2.5 6.0
border-image No 15.0[g 12] Experimental No 2.5 No
border-image-source 15.0[g 13] No No
border-image-slice
border-image-width
border-image-outset
border-image-repeat
box-shadow 9.0[t 11] 2.0[g 14]

[g 15]

Yes[w 11] No 2.5 No
box-decoration-break No No[g 16] No[w 12] No 2.7[p 1] No
Trident Gecko WebKit KHTML Presto Prince XML
Line Layout[spec 6]
CSS2 line-height 4.0 1.0 85 Yes 1.0 5.0
vertical-align 8.0 1.0 85 Yes 6.0
Positioning
CSS2 position 7.0 1.0 85 Yes 1.0 5.0
top 8.0 1.0 85 Yes 6.0
right 8.0 1.0 85 Yes 6.0
bottom 8.0 1.0 85 Yes 6.0
left 8.0 1.0 85 Yes 6.0
z-index 8.0 1.9 85 Yes 6.0
Box Alignment Module[spec 7]
CSS3
align-content No No Experimental No No No
align-items 16.0
align-self
justify-content
justify-items No No
justify-self
Generated and Replaced Content[spec 8]
CSS2 quotes 8.0 Yes Nightly build[w 13] 3.4 1.0 No
content 9.0[t 12] 1.9 Partial Yes 2.7 Partial
counter-increment 8.0 1.8 525 3.4 1.0 5.0
counter-reset 8.0 1.8 525 3.4 5.0
Lists[spec 9]
CSS2 list-style 4.0 1.0 85 Yes 1.0 6.0
list-style-image 4.0 1.0 85 Yes 6.0
list-style-position 4.0 1.0 85 Yes 6.0
list-style-type 8.0 1.0 85 3.4 Partial
Colors[spec 10]
CSS2 color 3.0 1.0 85 Yes 1.0 5.0
CSS3 opacity 9.0[t 1] 1.7 125 4.0 2.0 6.0
Trident Gecko WebKit KHTML Presto Prince XML
Backgrounds[spec 5]
CSS2 background 4.0 1.0 85 Yes 1.0 6.0
background-attachment 7.0 5.0
background-color 4.0 3.1
background-image 8.0 6.0
background-position 8.0 3.1
background-repeat 4.0 3.1
CSS3 background (multiple) 9.0[t 1] 1.9.2 312 3.5 2.5 No
background-clip 2.0[g 17] Yes[w 14] Experimental
background-origin
background-size Yes[w 15]
Fonts[spec 11]
CSS2 font 4.0 1.0 85 Yes Incorrect Yes
font-family 4.0 1.0 85 Yes 1.0 Yes
font-size 3.0 1.0 85 Yes 3.1
font-style 4.0 1.0 85 Yes Yes
font-variant 4.0 1.0 125 Yes Yes
font-weight 8.0 Partial Partial Yes Incorrect Yes
CSS3 font-size-adjust 10.0[t 13] 1.9 No[w 16] No No No
font-stretch 9.0[t 1] 9.0[g 18] No[w 17] No No 6.0
font-feature-settings 10.0[t 14] Experimental No[w 18] No No No
font-kerning No No No No No No
font-language-override No No No No No No
font-synthesis No No No No No No
font-variant-alternates No No No No No No
font-variant-caps
font-variant-east-asian
font-variant-ligatures
font-variant-numeric
font-variant-position
unicode-range 9.0[t 15] No[g 19] No No No No
Trident Gecko WebKit KHTML Presto Prince XML
Text[spec 12]
CSS2 text-align 4.0 1.0 85 Yes 1.0 Yes
text-decoration Yes 1.0 85 Yes 3.1
text-indent 3.0 1.0 85 Yes Yes
text-transform 4.0 1.0 85 Yes 6.0
letter-spacing 4.0 1.0 85 Yes 5.0
word-spacing 8.0 1.0 85 Yes 5.0
white-space 8.0 1.9.1 522 Yes 2.1 6.0
CSS3 text-overflow Partial 7.0[g 20] Partial 3.5.6 Experimental (Nightly)[p 2] No
word-break Partial 15.0[g 21] No No No No
line-break No No No No No No
hyphens 10.0[t 16] 6.0[g 22] Nightly build No No No
word-wrap 5.0 1.9.1 85 4.3 2.5 No
overflow-wrap No No[g 23] No No No No
text-align-last Partial 12.0[g 24] No[w 19] No No Partial
text-justify 5.5 No[g 25] No No No 6.0
text-emphasis No No No No No No
hanging-punctuation No No No[w 20] No No No
 CSS4 hyphenate-character No No No No No No
hyphenate-limit-zone 10.0[t 17]
hyphenate-limit-chars 10.0[t 18]
hyphenate-limit-lines 10.0[t 19]
hyphenate-limit-last No
Text Decoration[spec 13]
CSS3 text-shadow 10.0[t 20] 1.9.1 Yes 3.4 2.1 No
text-decoration-style No 6.0[g 26][g 27] No[w 21] No No No
text-decoration-color No No No No
text-decoration-line No No No No
text-decoration-skip No No No No No
text-underline-position No No No No No No
text-emphasis-style No No No No No No
text-emphasis-color
text-emphasis
text-emphasis-position
Trident Gecko WebKit KHTML Presto Prince XML
Writing Modes[spec 14]
CSS2 direction 5.0 1.0 85 Yes 1.0 7.0
unicode-bidi 5.0 1.0 525 Yes 7.0
CSS3 writing-mode 6.0[t 21] No[g 28] Nightly Build[w 22] No No No
text-combine No No Nightly build[w 23] No No No
Tables
CSS2 border-collapse 8.0 1.0 125 Yes 1.0 5.1
border-spacing 8.0 1.0 125 Yes 6.0
caption-side 8.0 1.4 85 Yes 5.0
empty-cells 8.0 1.0 125 Yes 5.0
table-layout 5.0 1.0 85 Yes 6.0
User interface[spec 15]
CSS2 cursor 5.5 1.8 125 Yes Partial Yes
outline 8.0 1.8 125 Yes 1.0 No
outline-color 8.0 1.8 125 Yes No
outline-style 8.0 1.8 125 Yes No
outline-width 8.0 1.8 125 Yes No
CSS3 outline-offset No 1.8 125 3.5 2.1 No
box-sizing 8.0 Experimental[g 29] Yes[w 24] 3.3.2 1.0 7.0
resize No 2.0[g 30] 525 No No No
appearance No Experimental Experimental No No No
icon No No No No No No
nav-index No No No No 2.1 No
nav-up No No No No No
nav-right No No No No No
nav-down No No No No No
nav-left No No No No No
Trident Gecko WebKit KHTML Presto Prince XML
Paged media[spec 16]
CSS2 page-break-before 4.0 Partial Partial 3.5 1.0 6.0
page-break-after 6.0
page-break-inside 8.0 19.0[g 31] 312 6.0
orphans No[g 32] 6.0
widows 6.0
CSS3 page No No No No No Yes
size No No No[w 25] No 1.0 6.0
image-orientation No No No No No No
object-fit No No[g 33] No No 2.7[p 3] No
object-position No No No No No
Speech[spec 17]
CSS3 cue No No[g 34] No No 1.0 No
cue-after
cue-before
pause
pause-after
pause-before
speak Nightly build[w 26]
voice-family No
voice-balance Experimental
voice-duration
voice-pitch
voice-pitch-range
voice-rate
voice-stress
voice-volume
interpret-as
phonemes
rest No
rest-after
rest-before
mark
mark-after
mark-before
Trident Gecko WebKit KHTML Presto Prince XML
Media Queries[spec 18]
CSS3 width 9.0[t 22] 1.9.1 525 4.1 2.0 No
height
device-width
device-height
device-aspect-ratio
color 2.5
color-index
monochrome
resolution No
orientation 4.2.1 No
aspect-ratio 2.1
grid No No 4.1 2.5
scan
Ruby characters[spec 19]
CSS3 ruby-position 5.0 No[g 35] No No No No
ruby-align
ruby-overhang
ruby-span No
Multi-column Layout[spec 20]
CSS3 column-count 10.0[t 23] Experimental[g 36] Experimental No 2.8[p 4] Yes
column-width
column-gap
column-rule
columns 9.0[g 37]
break-before No[g 38] Experimental[w 27] 6.0
break-after
break-inside No[w 28]
column-fill 14.0[g 39] No
column-span No[g 40] Experimental[w 29] No
Trident Gecko WebKit KHTML Presto Prince XML
Grid layout[spec 21]
CSS3 grid-after No No[g 41] No[w 30] No No No
grid-area
grid-auto-columns
grid-auto-flow
grid-auto-rows
grid-before
grid-column
grid-definition-columns
grid-definition-rows
grid-end
grid-row
grid-start
grid-template
Animation[spec 22]
CSS3
animation 10.0[t 24] 16.0[g 42] Experimental No 2.12 No
animation-delay
animation-direction
animation-duration
animation-iteration-count
animation-name
animation-play-state
animation-timing-function
animation-fill-mode
Transforms[spec 23]
CSS3
transform 10.0[t 25] 16.0 Experimental No 2.12 No
transform-origin
transform-style No
perspective
perspective-origin
backface-visibility
Transitions[spec 24]
CSS3
transition-property 10.0[t 26] 16.0[g 43] Experimental No Experimental No
transition-duration
transition-timing-function
transition-delay
transition
Flexible Box Layout[spec 25]
CSS3
flex 10.0[t 27] Experimental[g 44] Experimental No 2.12 No
flex-basis No No
flex-direction 10.0[t 28] 2.12
flex-flow No
flex-grow No 2.12
flex-shrink No No
flex-wrap 10.0[t 29] No
order No 2.12
Marquee[spec 26]
CSS3
marquee-direction No No Experimental[w 31] No No No
marquee-play-count
marquee-speed
marquee-style
overflow-style No
Regions[spec 27]
CSS3
flow-into 10.0[t 30] No[g 45] Nightly build No No No
flow-from
region-overflow No
break-before 10.0[t 31]
break-after
break-inside
Trident Gecko WebKit KHTML Presto Prince XML
Exclusions and Shapes[spec 28]
CSS3
wrap No No[g 46] Nightly build No No No
wrap-flow 10.0[t 32]
wrap-margin
wrap-padding No
wrap-through 10.0[t 33]
shape-outside No
shape-inside
shape-image-threshold
Masking[spec 29]
CSS2 clip 8.0 1.0 85 Yes 1.0 5.0
CSS3
clip-path No 1.9.1 No No No No
clip-rule No
mask No Partial Partial Partial Partial Partial
mask-box-image No No Experimental No No No
mask-box-image-outset No
mask-box-image-repeat
mask-box-image-slice
mask-box-image-source
mask-box-image-width
mask-clip No No Experimental No No No
mask-image
mask-origin
mask-position
mask-repeat
mask-size
mask-type 20.0 No
Trident Gecko WebKit KHTML Presto Prince XML

Trident property notes [edit]

  1. margininherit inherits the computation and recomputes it instead of inheriting the computed value.[t 34]
  2. display — Prior to 7.0, only none, block, inline, table-header-group, and table-footer-group are fully supported. Prior to 8.0, table are not supported, while inline-block is only supported on elements that are naturally inline.
  3. overflow — Prior to 7.0, overflow: visible; is incorrectly supported. In 8.0, scroll makes the element's height equal to its max-height even if the content isn't that tall.[t 35] This has been fixed in IE9.
  4. visibility — Prior to 8.0, visibility: collapse; is not supported. In 8.0, inline elements with visibility: visible; inside block elements with visibility: hidden; are not visible.[t 36]
  5. content — In 8.0, computed attr() values are not updated when the attribute changes.[t 37]
  6. border-color — Prior to 7.0, transparent is not supported.
  7. border-style — Prior to 8.0, hidden is not supported.
  8. border-style — Prior to 7.0, dotted is rendered as dashed.
  9. box-shadow — Trident 9.0 renders box-shadow blur value at about half the declared value. Prior to 9.0, trident supports similar functionality since 5.5 using the proprietary Shadow[t 38] and DropShadow[t 39] filters.
  10. position — Prior to 7.0, fixed positioning was not supported. 7.0 and later support it in standards-compliant mode only.
  11. z-index — Prior to 8.0, z-index is only partially supported.[t 40] In 8.0, floating point values are accepted in addition to integers.[t 41]
  12. list-style-type — Prior to 8.0, armenian, decimal-leading-zero, georgian, lower-greek, lower-latin, upper-latin are not supported.
  13. opacity — Prior to 9.0, Trident supported a proprietary alternative.[t 42]
  14. background-image — Prior to 8.0, background images are badly positioned in some cases.[t 43][t 44]
  15. background-attachment — Prior to 7.0, fixed was allowed on the body element only.
  16. background-position — Prior to 8.0, fixed positioning is not supported.
  17. font-weight — Prior to 8.0, incorrect rendering when value is 600.[t 45]
  18. text-align — In 8.0, text-align isn't inherited by :before and :after pseudo-elements.[t 46]
  19. white-space — Prior to 6.0, pre is not supported. Prior to 8.0, white-space is only partially supported; pre-line and pre-wrap are not supported.[t 47]
  20. cursor — Does not fail on non-prefixed vendor extensions.

Gecko property notes [edit]

  1. display — Values except inline-block and inline-table supported prior to 1.9.
  2. z-index — Negatives values are badly supported prior to 1.9.
  3. contentnone value is unsupported prior to 1.9. This property also fails on any normal (non-pseudo-) elements, which it must support according to the CSS3 "Generated and Replaced Content Module" spec.
  4. background-position — Versions prior to 1.7 implement the CSS2 syntax, not the proposed CSS2.1 expanded syntax.
  5. font-size-adjust — Prior to 1.9, supported on Windows only.
  6. font-weight — Only Regular and Bold weights get used, even if Light or Heavy/Black faces are installed, unless using DirectWrite in Gecko 2.0 on Windows 7 or Windows Vista.
  7. white-spacepre-line is not supported prior to 1.9.1. Prior to 1.9, pre-wrap was only supported experimentally as -moz-pre-wrap.
  8. visibilitycollapse is unsupported prior to 1.8.
  9. border-radius — Prior to 1.9.1, border curves are circular, not elliptical as specified by the current CSS3 draft. Short-cut definitions for border-radius read "tl tr br bl" instead of the W3C's "tr br bl tl". When the border style is dotted or dashed, curves are rendered as solid instead.[g 47]
  10. page-break-before; page-break-after — Only the always and auto values are supported.

WebKit property notes [edit]

  1. max-width; max-height; min-width; min-height — Are not supported on tables.[w 32]
  2. font — The system font keywords that allow designers to tailor presentation to the user's operating system environment are unsupported.
  3. font-weight — Only Regular and Bold weights get used, even if Light or Heavy/Black faces are installed.
  4. page-break-before; page-break-after — Only the always and auto values are supported.
  5. white-space — Prior to 522, pre-line and pre-wrap are unsupported.
  6. visibilitycollapse is unsupported prior to 522. Its implementation has the same effect as hidden and is therefore not compliant.[w 33]
  7. content — The none, open-quote, close-quote, no-open-quote, no-close-quote and normal values are unsupported. This property also fails on any normal (non-pseudo-) elements, which it must support according to the CSS3 "Generated and Replaced Content Module" spec.
  8. font-size — The font-size property does not always accept the value 0, in "font-size: 0px" the text is still visible.

KHTML property notes [edit]

  1. overflow — Values scroll and auto are unsupported.
  2. page-break-before; page-break-after — Before 3.5 only the always and auto values were supported.
  3. visibility — All properties are supported, but the implementation of collapse has the same effect as hidden and is therefore not compliant.

Presto property notes [edit]

  1. counter-increment, counter-reset — Implemented the algorithm in REC CSS2.
  2. background-position — Presto versions prior to Opera 8.0 implement the CSS2 syntax, not the proposed CSS2.1 expanded syntax.
  3. font-weight — Incorrect rendering when value is 600. Renders the text in a compatibility mode for websites made for Trident.
  4. visibility — Prior to 2.5, the value collapse was unsupported in table columns. On rows, it had the same effect as hidden and was therefore not compliant.
  5. cursorcursor is ignored with dynamic pseudo-classes and custom cursors are unsupported.
  6. content — Prior to 2.7, the none value was unsupported.[p 5]
  7. fontinherit should not be allowed together with a font-size value. This should not be parsed, but it's currently done in Opera.

Prince XML property notes [edit]

  1. visibility — The value collapse is unsupported.[r 1]
  2. list-style — The values armenian and georgian are unsupported.[r 1]
  3. content — The values open-quote and close-quote are unsupported.[r 1]

Descriptors [edit]

Trident Gecko WebKit KHTML Presto Prince XML
@counter-style
CSS3 additive-symbols No No No No No No
fallback
negative
prefix
range
speak-as
suffix
symbols
system
width
@font-face
CSS3 font-family Yes Yes Yes Yes Yes Yes
font-feature-settings
font-stretch No No No
font-style Yes Yes Yes
font-variant
font-weight Partial Partial Incorrect
src Yes Yes Yes
unicode-range No No No No No

Values and units [edit]

Trident Gecko WebKit KHTML Presto Prince XML
Numbers[spec 30]
CSS2 <number> A floating-point number 3.0 1.0 85 Yes 1.0 6.0
<length> <number> followed by units
<percentage> <number> followed by %
<integer> An integer
CSS3 <angle> <number> angle-unit 9.0[t 1] Yes Partial Partial Partial No
<time> <number> time-unit 2.0[g 43] Yes Yes 2.5
<frequency> <number> frequency-unit No No No
<fraction> Remaining space No No
Strings
CSS2 <string> String 3.0 1.0 85 Yes 1.0 Yes
\code Unicode escapes 6.0
Functions
CSS2 rect() A rectangle 8.0 1.0 85 Yes 1.0 Yes
url() Uniform Resource Identifier 3.0 1.0 85 Yes 1.0 Yes
counter() 8.0
attr() Attribute identifier
CSS3 calc() 9.0[t 1] 16.0[g 48] Yes[w 34] No No No
toggle() Toggling between values No No No No No No
Colors
CSS2 HTML4 color keywords 16 predefined web colors 3.0 1.0 85 Yes 1.0 Yes
#rrggbb or #rgb Hexadecimal notation
rgb(r, g, b) RGB notation 4.0
system colors[spec 31] 28 predefined system colors 3.0
CSS3 SVG color keywords 8.0 Yes Yes Yes Yes ?
currentColor The value of the color property. 9.0[t 1] 1.8 528 Yes 2.1 ?
rgba(r, g, b, a) RGBA notation 1.9 525 4.0 2.2 6.0
hsl(h, s, l) HSL notation 1.5 3.5.5 2.1 No
hsla(h, s, l, a) HSLA notation 1.9 3.5.5 2.2
transparent Full transparency 9.0 1.9 4.0 Partial Partial
Image values[spec 32] [spec 33]
CSS2 <url> Image types 3.0 1.0 85 Yes 1.0 Yes
CSS3 <sprite> No No No No No No
<image-list> No No No
<linear-gradient> 10.0[t 48] 16.0 Experimental[w 35] Experimental
<radial-gradient>
linear-gradient() Color gradients
radial-gradient()
repeating-linear-gradient()
repeating-radial-gradient()
CSS4 conic-gradient() No No No No No No
repeating-conic-gradient()
element() Reproduce element No Experimental No No No No
cross-fade() Transitioning between images No No [g 49] No No No No
image-set() Resolution negotiation No No No No No No
Counter Styles [spec 34]
CSS3 symbols() Anonymous Counter Styles No No No No No No
Keywords
CSS2 auto Automatically calculated 6.0 1.0 85 Yes 1.0 Yes
inherit Inherited from the parent 8.0
CSS3 initial No 19.0 125 No No No
Units
CSS2 px Pixel 3.0 1.0 85 Yes 1.0 Yes
pt Point
pc Pica
cm Centimetre
mm Millimetre
in inch
em em
ex ex
% Percentage
CSS3 deg Degree 9.0[t 1] 1.9.1 Yes Yes 2.5 No
grad Grad
rad Radian
turn turn 13.0 [g 50] No No No
ms Millisecond 2.0[g 51] Yes Yes 2.5
s Second
Hz Hertz No No No
kHz Kilohertz
dpi Dots per inch 1.9.1 No 4.1 2.5
dpcm Dots per centimetre
dppx Dots per pixel-unit 16.0 No ? No
gd Cells in the layout-grid No No No No
fr Remaining space in a series of length values No No No No
rem the font size of the root element 9.0[t 1] 1.9.2 Nightly build[w 36] No 2.10.229[p 6]
vw the viewport's width 19.0[g 1] Nightly build[w 37] No No
vh the viewport's height
vmin equal to the smaller of ‘vw’ or ‘vh’. No Nightly build[w 38]
vmax equal to the larger of ‘vw’ or ‘vh’.
ch the width of the "0" (ZERO, U+0030) glyph found in the font for the font size used to render. No 1.9.1 No No No
Variables
CSS ML1 [spec 35]
var-* define variable No No[g 52] Experimental No No No
var() use variable
Trident Gecko WebKit KHTML Presto Prince XML

General value and unit notes [edit]

  1. transparent

    CSS1 introduced the ‘transparent’ value for the background-color property. CSS2 allowed border-color to also accept the ‘transparent’ value. The Open eBook(tm) Publication Structure 1.0.1 [OEB101] extended the ‘color’ property to also accept the ‘transparent’ keyword. CSS3 extends the color value to include the ‘transparent’ keyword to allow its use with all properties that accept a <color> value. This simplifies the definition of those properties in CSS3.

  2. <angle> — The turn unit is unsupported.

Trident value and unit notes [edit]

  1. rect() — Prior to 8.0, rect() was not supported with the correct syntax using commas.
  2. auto — In quirks mode (IE5 emulation mode), auto does not work for margins, except table elements.
  3. transparent — In 7.0 and 8.0, using transparent in the color property will render the text as black.
  4. transparent — Prior to 7.0, transparent is not supported on borders (shows as solid black) and is ignored on PNG images.

Gecko value and unit notes [edit]

  1. <ch> — Prior to version 1.9.1, used the width of the "M" glyph instead of the width of the "0" glyph.[g 53]

Presto value and unit notes [edit]

  1. <number> — Prior to 2.1, there existed a quantization error for values greater than 20.47 (not limited to em, try any non-pixel units).[p 7]
  2. transparent — Keyword is ignored when used with the outline-color property. Prior to version 2.2, it was also ignored when used with the color and text-shadow properties.

General notes [edit]

Trident general notes [edit]

  1. -ms- — All experimental properties are prefixed with "-ms-", e.g. -ms-interpolation-mode instead of interpolation-mode.

Gecko general notes [edit]

  1. -moz- — All experimental selectors, properties and values are prefixed with "-moz-", e.g. ::-moz-selection instead of ::selection.

WebKit general notes [edit]

  1. -webkit- — All experimental selectors, properties and values are prefixed with "-webkit-", e.g. -webkit-box-shadow instead of box-shadow.

KHTML general notes [edit]

  1. -khtml- — All experimental selectors, properties and values are prefixed with "-khtml-", e.g. -khtml-opacity instead of opacity.

Presto general notes [edit]

  1. -xv- — All new selectors, properties and values introduced by CSS3 Speech Module are prefixed with "-xv-" (but not found in CSS2 aural style sheets), e.g. -xv-voice-rate instead of voice-rate.
  2. -o- — All experimental properties are prefixed with "-o-", e.g. -o-transition-property instead of transition-property.

DOM equivalents to vendor-specific styles [edit]

  1. The DOM properties corresponding to vendor-specific experimental CSS properties are prefixed with the vendor-prefix, without any hyphens, and with first letters capitalised, e.g. element.style.MozBorderRadius corresponding to the -moz-border-radius property, or element.style.OTransform corresponding to the -o-transform property. The exception is Internet Explorer which uses a lower-case prefix, e.g. element.style.msTransform.

References [edit]

Specifications [edit]

Trident references [edit]

  1. ^ a b c d e f g h i j k Internet Explorer Platform Preview Guide for Developers, Microsoft 
  2. ^ @keyframes rule (Internet Explorer), Microsoft 
  3. ^ ":valid pseudo-class (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  4. ^ ":invalid pseudo-class (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  5. ^ ":required pseudo-class (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  6. ^ ":optional pseudo-class (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  7. ^ Hopkins, James, Attribute selector (which matches the attribute, 'colspan' for TD and TH elements) matches every TD and TH element 
  8. ^ Hammond, David, Comment on "IE 8 CSS 2.1 support results" 
  9. ^ :first-letter Ignore Bug, hasLayout.net 
  10. ^ Hopkins, James, Declaration which includes !important keyword is ignored when used within a :first-letter or :first-line rule 
  11. ^ Box-shadow, one of CSS3′s best new features - Browser's support (including IE9), WEBFLUX 
  12. ^ content property doesn't return the value of an attribute when attribute is dynamically 
  13. ^ "font-size-adjust property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  14. ^ "font-feature-settings property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  15. ^ "@font-face rule (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  16. ^ "-ms-hyphens property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  17. ^ "-ms-hyphenate-limit-zone property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  18. ^ "-ms-hyphenate-limit-chars property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  19. ^ "-ms-hyphenate-limit-lines property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  20. ^ "text-shadow property (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  21. ^ CSS 3 Text: A Tale of writing-mode Woe 
  22. ^ "@media rule (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  23. ^ "Multi-column Layout (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  24. ^ "Animations (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  25. ^ "Transforms (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  26. ^ "Transitions (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  27. ^ "Flexible Box ("Flexbox") Layout (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  28. ^ "Flexible Box ("Flexbox") Layout (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  29. ^ "Flexible Box ("Flexbox") Layout (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  30. ^ "Regions (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  31. ^ "Multi-column Layout (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  32. ^ "Exclusions (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  33. ^ "Exclusions (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 
  34. ^ Talbot, Inherited margin with inherit keyword: the computed value's parent should be inherited 
  35. ^ Groot, Sven, Overflow: scroll causes element to always have its max-height 
  36. ^ Hopkins, James, visibility:visible applied to inline element doesn’t override inherited visibility:hidden value applied to it’s block-level parent 
  37. ^ Content: attr(x) isn't updated when the attribute's value change 
  38. ^ Shadow Filter, Microsoft 
  39. ^ DropShadow Filter, Microsoft 
  40. ^ Positioning 
  41. ^ Hopkins, James, Illegal parsing of a z-index decimal value, instead of an integer 
  42. ^ Alpha Filter, Microsoft 
  43. ^ IE7-/Escaping Background Image Bug - Demo 1 
  44. ^ IE7-/Escaping Background Image Bug - Demo 2 
  45. ^ Koch, Peter-Paul, IE Windows and Opera - font-weight: 600 vs. bold, QuirksMode 
  46. ^ Hopkins, James, 'text-align' value isn't inherited by ':before' and ':after' pseudo elements 
  47. ^ Font and Text, Microsoft 
  48. ^ "Gradients (Internet Explorer)". Microsoft. Retrieved 17 November 2012. 

Gecko references [edit]

  1. ^ a b "What’s New", Firefox 19 Release Notes (Mozilla) 
  2. ^ Bug 418039 - CSS parent (has-child) and ancestor (has-descendant) selectors (:subject), Mozilla 
  3. ^ Bug 813187 - Support CSS 2.1 @page Page Selectors, Mozilla 
  4. ^ Bug 506554 - Implement the CSS3 pseudo-classes :required and :optional, Mozilla 
  5. ^ Bug 312971 - Support :read-only and :read-write pseudoclasses, Mozilla 
  6. ^ Bug 561154 - fix specificity of :-moz-any(), Mozilla 
  7. ^ Bug 562169 - Implement the :dir(rtl/ltr) selector to select on HTML directionality, Mozilla 
  8. ^ Bug 648722 - Add support for :scope as :-moz-scope, Mozilla 
  9. ^ Bug 509958 - Remove the -moz prefix from ::selection, Mozilla 
  10. ^ Bug 237119 - property 'display' is ignored for generated content, Mozilla 
  11. ^ Bug 451134 - change -moz-border-radius* properties to css3-background names, Mozilla 
  12. ^ Bug 378217 - implement css3 'border-image' property, Mozilla 
  13. ^ Bug 497995 - Implement border-image revisions in latest css3-background, Mozilla 
  14. ^ Bug 590039 - fix blur radius computation and rename -moz-box-shadow to box-shadow, Mozilla 
  15. ^ Bug 470547 - Spread (4th length) for text-shadow not supported, Mozilla 
  16. ^ Bug 613659 - implement box-decoration-break: Left/right part of a box-shadow should only be drawn on the first/last continuation of an inline box, Mozilla 
  17. ^ Bug 549809 - Rename background-origin and background-clip properties and values to match css3-background, Mozilla 
  18. ^ Bug 3512 - (font-stretch) Implement font-stretch property, Mozilla 
  19. ^ Bug 475891 - (unicode-range) implement unicode-range support in user font set, Mozilla 
  20. ^ Bug 312156 - implement text-overflow: ellipsis from CSS3 text, Mozilla 
  21. ^ Bug 249159 - implement 'word-break' properties of CSS3, Mozilla 
  22. ^ hyphens - MDN Docs, Mozilla  (Only English)
  23. ^ Bug 587438 - word-wrap, Mozilla 
  24. ^ Bug 536557 - Implement CSS3 text-align-last, Mozilla 
  25. ^ Bug 276079 - Implement text-justify property(but 'auto', 'inter-word', 'inter-ideograph' and 'distribute' only), Mozilla 
  26. ^ Bug 59109 - implement CSS3 text module's text-decoration-style and text-decoration-color, Mozilla 
  27. ^ Firefox 6 for developers, Mozilla 
  28. ^ Bug 145503 - (writing-mode) CSS3 writing-mode (vertical text), Mozilla 
  29. ^ Implement 'box-sizing' (dropping the -moz- prefix), Mozilla 
  30. ^ Bug 553576 - Implement css resize property behaviour, Mozilla 
  31. ^ Bug 132035 - Implement missing page-break-* CSS2.1 features, Mozilla 
  32. ^ Bug 137367 - Implement orphans and widows, Mozilla 
  33. ^ Bug 624647 - [CSS] Implement object-fit, Mozilla 
  34. ^ Bug 47159 - Support css3-speech (previously Aural Style Sheet) properties in getComputedStyle, Mozilla 
  35. ^ Bug 256274 - Implement CSS ruby module, Mozilla 
  36. ^ Bug 684062 - Compare spec and implement CSS multi-column support, Mozilla 
  37. ^ Bug 446569 - Implement CSS3 columns shorthand, Mozilla 
  38. ^ Bug 549114 - Support Column Breaks, Mozilla 
  39. ^ Bug 695222 - Implement column-fill, Mozilla 
  40. ^ Bug 616436 - column-span not implemented (css3 multicolumn), Mozilla 
  41. ^ Bug 616605 - CSS Grid Layout, Mozilla 
  42. ^ Bug 435442 - Implement Webkit's CSS Animation proposal, Mozilla 
  43. ^ a b Bug 435441 - get CSS transitions complete enough to ship, Mozilla 
  44. ^ Bug 783409 - Turn on CSS flexbox in builds by default (by enabling pref, build flag, etc), Mozilla 
  45. ^ Bug 674802 - implement CSS3 Regions, Mozilla 
  46. ^ Bug 674804 - implement CSS3 Exclusions, Mozilla 
  47. ^ Bug 382721 - Dotted/dashed -moz-border-radiused corners are rendered as solid, Mozilla 
  48. ^ Bug 363249 - implement css3-values calc(), Mozilla 
  49. ^ Bug 546052 - Support CSS transitions with background-image images (cross-fading), Mozilla 
  50. ^ Bug 716628 - Support "turn" unit from CSS3 Values and Units, Mozilla 
  51. ^ Bug 435441 - Implement Webkit's CSS Transitions proposal, Mozilla 
  52. ^ Bug 773296 - CSS Variables, Mozilla 
  53. ^ Bug 282126 - What to do about the 'ch' length unit? (Mozilla vendor specific), Mozilla 

Webkit references [edit]

  1. ^ Bug 35329 - Enhance CSS parser for Paged Media (Iteration 1), WebKit 
  2. ^ Bug 85062 - Support CSS 3 Paged Media Margin Boxes, WebKit 
  3. ^ Bug 38731 - Make CSS Parser properly handle only-for-pages pseudo-classes, WebKit 
  4. ^ Bug 27458 - Support :default HTML5 CSS selector, Webkit 
  5. ^ Bug 27357 - Support :valid/:invalid CSS selectors, Webkit 
  6. ^ Bug 29071 - Support for :in-range and :out-of-range CSS selectors, Webkit 
  7. ^ Bug 25551 - Support for HTML5 Forms "required" attribute, Webkit 
  8. ^ Bug 3409 - CSS1: Safari ignores "text-transform" attribute in "first-line" CSS rules, Webkit 
  9. ^ Bug 23209 - [RFE] CSS Generated Content does not transition, Webkit 
  10. ^ Bug 27578 - Drop the prefix from the border-radius properties, Webkit 
  11. ^ Bug 51448 - Support unprefixed box-shadow property, WebKit 
  12. ^ Bug 27576 - [CSS3 Backgrounds and Borders] Implement box-decoration-break, WebKit 
  13. ^ Bug 3234 - CSS2: Implement better quote support (for the q tag), Webkit 
  14. ^ Bug 27562 - Drop the prefixes from background-clip and background-origin, WebKit 
  15. ^ [CSS3 Backgrounds and Borders] Drop the prefix from background-size, WebKit 
  16. ^ Bug 15257 - Support CSS 3 font-size-adjust, Webkit 
  17. ^ Bug 12530 - CSS3: Support the font-stretch property, Webkit 
  18. ^ Bug 63796 - Master: Support CSS3 font feature properties, Webkit 
  19. ^ Bug 76173 - CSS3: text-align-last on webkit, Webkit 
  20. ^ Bug 18109 - Implement hanging punctuation, Webkit 
  21. ^ Bug 58491 - [css3-text] Support text-decoration-* properties from CSS3 Text, Webkit 
  22. ^ Bug 46123 - Implement writing-mode support for all of layout (master bug), WebKit 
  23. ^ Bug 48538 - Support the text-combine CSS property, WebKit 
  24. ^ Bug 36713 - Support box-sizing without the vendor prefix, WebKit 
  25. ^ Bug 10894 - CSS "size" property is not supported, Webkit 
  26. ^ Bug 46827 - AX: implement CSS3 Speech "speak", WebKit 
  27. ^ Bug 15552 - Support CSS3 column-break-before and column-break-after, WebKit 
  28. ^ Bug 39498 - [CSS3 Multi-column] Floating elements are rendered below the columns, WebKit 
  29. ^ Bug 15550 - WebKit does not support CSS3 column-span:, Webkit 
  30. ^ Bug 60731 - Implement CSS3 Grid Layout (master bug), Webkit 
  31. ^ Scrolling text with -webkit-marquee, Ajnaware, 2008-08-14 
  32. ^ Bug 25016 - max-width and max-height are not overriding the width and height properties when 'display' set to 'table', Webkit 
  33. ^ Bug 8735 - CSS 2.1 visibility: collapse rendered as visibility: hidden, Webkit 
  34. ^ Bug 16662 - CSS3: Implement calc(), Webkit 
  35. ^ Fraser, Simon (2011-01-14). "CSS3 Gradients". Surfin’ Safari. WebKit. Retrieved 2011-01-16. 
  36. ^ Bug 78295 - Support for CSS rem unit in Media Queries, Webkit 
  37. ^ Bug 27160 - Implement vw/vh/vm (viewport sizes) from CSS 3 Values and Units, Webkit 
  38. ^ Bug 91440 - Implement 'vmin' and 'vmax' from CSS3 values and units, Webkit 

Presto references [edit]

  1. ^ Storey, David (2010-11-23). "First browser to 11 (unless Chrome gets there first)". Opera. Retrieved 2010-11-23. 
  2. ^ Haavard (2010-08-09), New 10.70 snapshot with more Presto updates, Opera 
  3. ^ Haavard (2010-08-03), Presto update for Opera 10.70, Opera 
  4. ^ "CSS Multi-column Layout Module support in Opera Presto 2.8". Opera. 2011-03-06. Retrieved 2011-03-06. 
  5. ^ Koch, Peter-Paul, :before/:after and content, Quirksmode 
  6. ^ Lawson, Bruce (2011-12-06). "Hello Opera 11.60!". Opera. Retrieved 2012-05-05. 
  7. ^ Quantization error for em values in Opera 7–9.2, archived from the original on 2008-03-21 

Prince XML references [edit]

Other references [edit]

External links [edit]

  • WebDevout — mostly covers Windows browsers. Extensive bug testing.
  • Can I use — comparison tables for HTML5 and CSS3
  • QuirksMode — comprehensive and current as of April 2012.