Software:Comparison of browser engines (CSS support)

From HandWiki
Short description: None

This article compares Cascading Style Sheets (CSS) support for several browser engines.

Explanation of the tables

Engine Status Embedded in
WebKit Active Safari browser, plus all browsers hosted on the iOS App Store.
Blink Active Google Chrome and other web browsers based on Chromium, such as Microsoft Edge, Opera, and Brave.
EdgeHTML Active Universal Windows Platform apps; formerly in the Edge browser[1].
Gecko Active Firefox browser and Thunderbird email client, plus forks like SeaMonkey and Waterfox.
KHTML Discontinued Konqueror browser
Presto Discontinued Formerly used as Opera's browser engine, prior to the migration to Chromium and Blink.
Trident Discontinued Internet Explorer and versions of Microsoft Outlook prior to Outlook 2007.

Values

These indicate the level of support for the given item in each engine. By default, the most recent version of the engine is implied. However, a specific version number can be listed; when this indicates full support, it's the initial version of the engine fully supporting the item.

Value Meaning
Yes Fully supported
No Has never been supported
Partial Only some values are supported
Incorrect Not implemented correctly in all cases
Experimental May be incomplete or buggy
Nightly build Currently in development; full support is expected
Depends Only supported for the specified conditions
Dropped No longer supported

Other notes

Vendor-specific

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 MSHTML, which used a lower-case prefix, e.g. element.style.msTransform.

  • Gecko: -moz- — All experimental selectors, properties and values are prefixed with "-moz-", e.g. ::-moz-selection instead of ::selection.
  • Webkit: -webkit- — All experimental selectors, properties and values are prefixed with "-webkit-", e.g. -webkit-box-shadow instead of box-shadow.
  • MSHTML: -ms- — All experimental properties are prefixed with "-ms-", e.g. -ms-interpolation-mode instead of interpolation-mode.
  • KHTML: -khtml- — All experimental selectors, properties and values are prefixed with "-khtml-", e.g. -khtml-opacity instead of opacity.
  • Presto: -o- — All experimental properties are prefixed with "-o-", e.g. -o-transition-property instead of transition-property.

Abbreviations

  • CSS1 : Cascading Style Sheets (CSS1) Level 1 Specification[spec 1]
  • CSS2 : Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification[spec 2]
  • CSS3 : CSS Module Level 3
  • CSS4 : CSS Module Level 4

Grammar and rules

MSHTML EdgeHTML Gecko WebKit KHTML Presto
CSS2 !important Weight increasing 7.0 12 1.0 85 Yes 1.0
/*Comment*/ Comments 3.0 12 1.0 85 Yes 1.0
@import Import stylesheet 8.0 12 1.0 Yes Yes 1.0
@charset Character set 5.5 12 1.0 Yes 4.2.3 1.0
@media Media-specific rules 5.5 12 1.0 Yes Yes 1.0
css-
namespace-3
@namespace Namespace declaration 9.0[t 1] 12 1.0 Yes Yes 1.0
earlier draft of css3-
conditional
@document Restriction by URLs No No 6.0 No No No
css-
animations-1
@keyframes Animation key 10.0[t 2] 12 16.0 Experimental No 2.12
css-
conditional-3
@supports Conditional Rules No 12 22.0[g 1] 28.0[w 1] No 2.12
css-counter-
styles-3
@counter-style Custom Counter Styles No No 33.0[g 2] No No No
css-device-
adapt-1
@viewport Viewport, Device Adaptation 10.0[t 3] 12.0 No[w 2] No No 2.7.62[p 1]
filter-
effects-1
@filter Filter No No 35.0 Experimental No No
Page
CSS2 @page For paged media 8.0 12 19.0[g 3] Nightly Build[w 3] No 1.0
css-page-3 @top-left-corner Margin boxes[spec 3] No No No No[w 4] 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
Font
css-fonts-3 @font-face Define font 9.0[t 4] 12 1.9.1 525 4.3 2.2
@font-feature-values Define font features No No 34.0 No No No
@annotation Font feature value block
@styleset No No No No No
@swash No No No No No
@ornaments No No No No No
@stylistic No No No No No
@character-variant No No No No No
MSHTML EdgeHTML Gecko WebKit KHTML Presto
MSHTML notes
  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 notes
  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

MSHTML EdgeHTML Gecko WebKit KHTML Presto
Element selectors[spec 4]
CSS2 * Universal 7.0 12 1.0 85 Yes 1.0
E Element 4.0 12 1.0 85 Yes
E.class Class 7.0 12 1.0 85 Yes
E#id ID 4.0 12 1.0 85 Yes
selectors-3 ns|E Namespaced 9.0 12 1.0 Yes Yes
Relationship selectors
CSS2 E F Descendant 4.0 12 1.0 85 Yes 1.0
E > F Child 7.0 12 1.0 85 Yes
E + F Direct adjacent 7.0 12 1.0 85 Yes
selectors-3 E ~ F Indirect adjacent 7.0 12 1.7 412 3.3.2 2.0
selectors-4 E /for/ F Reference combinators No No No No No No
E! > F Subject No No No[g 4] No No No
F || E Column relation No No No No No No
Attribute selectors
CSS2 E[attr] Has 7.0 12 1.0 85 Yes 1.0
E[attr="value"] Equals 7.0 12 1.0 Yes Yes
E[attr~="value"] Contains (space-separated) 7.0 12 1.0 Yes Yes
E[attr|="value"] Contains (hyphen-separated) 7.0 12 1.0 Yes Yes
selectors-3 E[attr^="value"] Begins with 7.0 12 1.0 Yes 3.4 1.0
E[attr$="value"] Ends with 7.0 12 1.0 Yes 3.4 2.0
E[attr*="value"] Contains substring 7.0 12 1.0 Yes 3.4
E[ns|attr] Namespaced 7.0 12 1.0 Yes 3.4
selectors-4 E[foo="bar" i] Case-sensitivity No No No No No No
Pseudo-classes
CSS2 E:link Unvisited hyperlink 3.0 12 1.0 85 Yes 1.0
E:visited Visited hyperlink 3.0 12 1.0 85 Yes
E:active Active 8.0 1.0 12 85 Yes
E:hover Mouseover 7.0 12 1.0 419.3 Yes
E:focus Focused 8.0 12 1.0 Yes Yes
E:first-child First child 7.0 12 1.0 85 Yes
E:lang() Language 8.0 12 1.2 525 3.4
@page:first First page 8.0 12 No[g 5] Yes[w 5] No
@page:left Left page
@page:right Right page
selectors-3 E:root Root 9.0 12 1.0 85 3.4 2.1
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
E:enabled Enabled state 1.8 2.0
E:disabled Disabled state 1.8
E:checked Checked state 1.0
selectors-4 E:indeterminate Indeterminate state 1.9.2 522 No No
E:default Default No No 1.9 Yes[w 6] 4.3 2.0
E:valid Valid 10.0[t 5] 12 1.8 Yes[w 7] No
E:invalid Invalid 10.0[t 6] 12
E:in-range In range No 13 Yes[w 8]
E:out-of-range Out of range No 13
E:required Required 10.0[t 7] 12 2.0[g 6] Yes[w 9]
E:optional Optional 10.0[t 8] 12
E:read-only Read-only No 13 78[g 7] 530 Incorrect Incorrect
E:read-write Read and write No 13
E:not(s1, s2) Negations No No 84 No No No
E:is(s1, s2) Matches-any 82[g 8]
E:has(s1) Relational pseudo-class No
E:dir(ltr) Directionality 49[g 9]
E:lang(zh, *-hant) Languages No
E:any-link Hyperlink 50.0[g 10]
E:local-link Local link No
E:local-link(0) Local link
E:scope Contextual reference 32[g 11]
E:current Time-dimensional : current No
E:current(s) Time-dimensional : current
E:past Time-dimensional : past
E:future Time-dimensional : future
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
E:placeholder-shown placeholder text
E:active-drop will receive the item
E:valid-drop could receive the item
E:invalid-drop cannot receive the item
Pseudo-elements
CSS2 E:first-letter First letter 9.0 12 1.0 85 Yes 1.0
E:first-line First line Partial
E:before Before 8.0 1.9.1 Partial
E:after After
selectors-3 E::before Double colon notation 9.0 12 1.9.1 Partial 3.4 1.0
E::after Double colon notation
E::first-letter Double colon notation 1.5 85
E::first-line Double colon notation Partial
css-pseudo-4 E::marker[spec 5] list marker No No 68 No No No
E::selection Selection 9.0 12 62 412 3.4 2.1
CSS UI pseudo elements E::value user interface element fragments[spec 6] No No No No No No
E::choices
E::repeat-item
E::repeat-index
MSHTML EdgeHTML Gecko WebKit KHTML Presto
General notes
  1. :read-only and :read-write — Both Presto and KHTML handle the case of the contenteditable attribute incorrectly.
MSHTML notes
  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 9] This may not actually be a bug, as ambiguity exists in the specification.[t 10]
  6. :first-letter, :first-line — Prior to IE9 in 6.0, combining :first-letter rules with others may be problematic.[t 11] In 8.0, rules with !important are ignored inside :first-line and :first-letter declarations.[t 12]
Gecko notes
  1. (:):before, (:):after — CSS2.0 behavior : some properties are unimplemented prior to 1.9.1.[g 12]
WebKit notes
  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 10]
  3. (:):before/after — some styles can't be applied to :before and :after pseudo-elements, such as animations and transitions.[w 11]
Presto notes
  1. :target — Prior to 2.5, styles aren't applied when navigating using back and forward buttons.

Properties

MSHTML EdgeHTML Gecko WebKit KHTML Presto
Cascading and Inheritance
css-
cascade-3
all No No 27.0[g 13] No No No
Display
CSS2 display 8.0 12 1.9 85 Yes 1.0
Earlier
draft of
css-
display-3
display-inside No No No No No No
display-outside
display-list
css-
display-3
box-suppress
Box Model[spec 7]
CSS2 margin 9.0 12 1.0 85 Yes 1.0
padding 4.0 1.0 85 Yes
width 4.0 1.0 85 Yes
height 4.0 1.0 85 Yes
float 5.0 1.0 85 Yes
clear 5.0 1.0 85 Yes
min-width 7.0 1.0 Partial Yes
max-width 7.0 1.0 Partial Yes
min-height 7.0 1.7 Partial 3.3.2
max-height 7.0 1.7 Partial 3.3.2
visibility 9.0 1.8 Partial Partial 2.5
Overflow
CSS2 overflow 9.0 12 1.0 85 3.2 1.0
css-
overflow-
3
overflow-x 9.0 12 1.8 525 3.5.6 2.1
overflow-y
max-lines No No No No No No
Borders
CSS2 border 4.0 12 1.0 85 Yes 1.0
border-color 7.0
border-style 8.0
border-width 4.0
border-top 5.5
border-right
border-bottom
border-left
css-
backgrounds-3
border-radius 9.0[t 1] 12 2.0[g 14] 533[w 12] Experimental 2.5
border-image 11.0 15.0[g 15] Experimental No 2.5
border-image-source 15.0[g 16] No No
border-image-slice
border-image-width
border-image-outset
border-image-repeat
box-shadow 9.0[t 13] 2.0[g 17]

[g 18]

Yes[w 13] No 2.5
box-decoration-break No No 32.0[g 19] No[w 14] No 2.7[p 2]
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Line Layout[spec 8]
CSS2 line-height 4.0 12 1.0 85 Yes 1.0
vertical-align 8.0 1.0 85 Yes
Positioning
CSS2 position 7.0 12 1.0 85 Yes 1.0
top 8.0 1.0 85 Yes
right 8.0 1.0 85 Yes
bottom 8.0 1.0 85 Yes
left 8.0 1.0 85 Yes
z-index 8.0 1.9 85 Yes
Box Alignment Module
css-align-3
align-content 11.0 12 28.0 Experimental No No
align-items 20.0
align-self
justify-content
justify-items No No No
justify-self
Generated and Replaced Content[spec 9]
CSS2 quotes 8.0 12 Yes 412[w 15] 3.4 1.0
content 9.0[t 14] 1.9 Partial Yes 2.7
counter-increment 8.0 1.8 525 3.4 1.0
counter-reset 8.0 1.8 525 3.4
Lists[spec 10]
CSS2 list-style 4.0 12 1.0 85 Yes 1.0
list-style-image 4.0 1.0 85 Yes
list-style-position 4.0 1.0 85 Yes
list-style-type 8.0 1.0 85 3.4
Colors
CSS2 color 3.0 12 1.0 85 Yes 1.0
css-color-3 opacity 9.0[t 1] 12 1.7 125 4.0 2.0
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Backgrounds
CSS2 background 4.0 12 1.0 85 Yes 1.0
background-attachment 7.0
background-color 4.0
background-image 8.0
background-position 8.0
background-repeat 4.0
css-
backgrounds-3
background (multiple) 9.0[t 1] 12 1.9.2 312 3.5 2.5
background-clip 2.0[g 20] Yes[w 16] Experimental
background-origin
background-size Yes[w 17]
Early ideas
for css-
backgrounds-4
background-position-x 8.0[t 15] 12 No Experimental No No
background-position-y
Fonts
CSS2 font 4.0 12 1.0 85 Yes Incorrect
font-family 4.0 1.0 85 Yes 1.0
font-size 3.0 1.0 85 Yes
font-style 4.0 1.0 85 Yes
font-variant 4.0 1.0 125 Yes
font-weight 8.0 Partial Partial Yes Incorrect
css-fonts-3 font-size-adjust 10.0[t 16] 12 1.9 No[w 18] No No
font-stretch 9.0[t 1] 9.0[g 21] No[w 19] No No
font-feature-settings 10.0[t 17] 34.0[2][g 22] No[w 20] No No
font-kerning No No No No No
font-language-override No No No No
font-synthesis No No No No
font-variant-alternates 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 18] 12 38.0[g 23] No No No
Text
CSS2 text-align 4.0 12 1.0 85 Yes 1.0
text-decoration Yes 1.0 85 Yes
text-indent 3.0 1.0 85 Yes
text-transform 4.0 1.0 85 Yes
letter-spacing 4.0 1.0 85 Yes
word-spacing 8.0 1.0 85 Yes
white-space 8.0 1.9.1 522 Yes 2.1
css-text-3 word-break Partial Partial 15.0[g 24] No No No
line-break 11.0 12 No No No No
hyphens 10.0[t 19] 12 6.0[g 25] Experimental No No
word-wrap 5.0 12 1.9.1 85 4.3 2.5
overflow-wrap No No No[g 26] No No No
text-align-last Partial Partial 12.0[g 27] No[w 21] No No
text-justify 5.5 12 No[g 28] No No No
text-emphasis No No No No No No
hanging-punctuation No No No No[w 22] No No
Early ideas
for css-
text-4
hyphenate-character No No No No No No
hyphenate-limit-zone 10.0[t 20] 12
hyphenate-limit-chars 10.0[t 21] 12
hyphenate-limit-lines 10.0[t 22] 12
hyphenate-limit-last No No
text-space-collapse
text-spacing
text-wrap
Text Decoration
css-text-
decor-3
text-shadow 10.0[t 23] 12 1.9.1 Yes 3.4 2.1
text-decoration-style No No 36.0[g 29][g 30] No[w 23] 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 11.0 12 No No No No
text-emphasis-style No No No No No No
text-emphasis-color
text-emphasis
text-emphasis-position
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Writing Modes
CSS2 direction 5.0 12 1.0 85 Yes 1.0
unicode-bidi 5.0 1.0 525 Yes
css-
writing-
modes-3
writing-mode 7.0[t 24] 12 No[g 31] Nightly Build[w 24] No No
text-combine-horizontal 11.0[t 25] 12.0 No No No No
text-orientation No No No No No No
Tables
CSS2 border-collapse 8.0 12 1.0 125 Yes 1.0
border-spacing 8.0 1.0 125 Yes
caption-side 8.0 1.4 85 Yes
empty-cells 8.0 1.0 125 Yes
table-layout 5.0 1.0 85 Yes
User interface
CSS2 cursor 5.5 12 1.8 125 Yes Partial
outline 8.0 1.8 125 Yes 1.0
outline-color 8.0 1.8 125 Yes
outline-style 8.0 1.8 125 Yes
outline-width 8.0 1.8 125 Yes
css-ui-3 outline-offset No No 1.8 125 3.5 2.1
box-sizing 8.0 12 29.0[g 32] Yes[w 25] 3.3.2 1.0
resize No No 2.0[g 33] 525 No No
appearance No 12 Experimental Experimental No No
icon No No No No No No
nav-index No No No No 2.1
nav-up No No No No
nav-right No No No No
nav-down No No No No
nav-left No No No No
text-overflow Partial Partial 7.0[g 34] Partial 3.5.6 Experimental (Nightly)[p 3]
Paged media
CSS2
page-break-before 4.0 12 Partial Partial 3.5 1.0
page-break-after
page-break-inside 8.0 19.0[g 35] 312
orphans No[g 36]
widows
css-page-3 page No No No No No No
size No No[g 37] No[w 26] No 1.0
image-orientation No 26.0[g 38] No No No
object-fit No 36.0[g 39] No No 2.7[p 4]
object-position No No No
Speech
css-speech-1 cue No No No[g 40] No No 1.0
cue-after
cue-before
pause
pause-after
pause-before
speak Nightly build[w 27]
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
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Media Queries
css3-
mediaqueries
width 9.0[t 26] 12 1.9.1 525 4.1 2.0
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 11.0 Yes 4.1 2.5
scan
Ruby characters
css-ruby-1 ruby-position No No 38.0[g 41] No No No
ruby-align
ruby-merge No
Multi-column Layout
css-
multicol-1
column-count 10.0[t 27] 12 Experimental[g 42] Experimental No 2.8[p 5]
column-width
column-gap
column-rule
columns 9.0[g 43]
break-before No[g 44] Experimental[w 28]
break-after
break-inside No[w 29]
column-fill 14.0[g 45] No
column-span No[g 46] Experimental[w 30]
Grid layout
css-
grid-1
grid No No Experimental[g 47] Experimental[w 31] No No
grid-template
grid-template-columns
grid-template-rows
grid-template-areas
grid-auto-columns
grid-auto-rows
grid-auto-flow
grid-auto-position
grid-columns 10.0[t 28] 12
grid-columns-start No No
grid-columns-end
grid-row 10.0[t 29] 12
grid-row-start No No
grid-row-end
grid-area
Animation
css-
animations-1
animation 10.0[t 30] 12 16.0[g 48] Experimental No 2.12
animation-delay
animation-direction
animation-duration
animation-iteration-count
animation-name
animation-play-state
animation-timing-function
animation-fill-mode
Transforms
css-
transforms-
1
transform 10.0[t 31] 12 16.0 Experimental No 2.12
transform-origin
transform-style No
perspective
perspective-origin
backface-visibility
Transitions
css-
transitions-1
transition-property 10.0[t 32] 12 16.0[g 49] Experimental No Experimental
transition-duration
transition-timing-function
transition-delay
transition
Flexible Box Layout
css-
flexbox-1
flex 11.0 12 22.0[g 50] 9.0[w 32] No 2.12
flex-basis No
flex-direction 2.12
flex-flow 28.0 No
flex-grow 22.0 2.12
flex-shrink No
flex-wrap 28.0 No
order 22.0 2.12
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Regions
css-
regions-1
flow-into 10.0[t 33] 12 No[g 51] Nightly build No No
flow-from
region-fragment No No
break-before No No
break-after
break-inside
Exclusions
css3-
exclusions
wrap-flow 10.0[t 34] 12 No[g 52] Nightly build No No
wrap-through
Shapes
css-
shapes-1
shape-margin No No No Nightly build No No
shape-outside No
shape-image-threshold
Masking
CSS2 clip 8.0 12 1.0 85 Yes 1.0
css-
masking-1
clip-path No No 1.9.1 No No No
clip-rule No
mask No No Partial Partial Partial Partial
mask-box-image No No No Experimental 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 No Experimental No No
mask-image
mask-origin
mask-position
mask-repeat
mask-size
mask-type 20.0 No
Compositing and Blending
compositing-
1
mix-blend-mode No No 32.0 No No No
isolation 36.0
background-blend-mode 30.0
Filter Effects
filter-
effects-1
filter No 13 35.0[g 53] 18.0[w 33] No No
flood-color No No No
flood-opacity
color-interpolation-filters
lighting-color
Pointer events
SVG1.1 and
earlier
draft of
css3-ui
pointer-events 11.0 12.0 1.9.2 530 No 2.0
pointer-
events
touch-action 11.0 12.0 29.0[g 54] No No No
Line Grid
css-line-
grid-1
box-snap No No No No No No
line-grid
line-slack
line-snap
MSHTML EdgeHTML Gecko WebKit KHTML Presto
Logical Properties
Early ideas
for css-
logical-1
block-size No No 41.0[g 55] No No No
inline-size
min-block-size
min-inline-size
max-block-size
max-inline-size
margin-block-start
margin-block-end
margin-inline-start
margin-inline-end
offset-block-start
offset-block-end
offset-inline-start
offset-inline-end
padding-block-start
padding-block-end
padding-inline-start
padding-inline-end
border-block-start-width
border-block-end-width
border-inline-start-width
border-inline-end-width
border-block-start-style
border-block-end-style
border-inline-start-style
border-inline-end-style
border-block-start-color
border-block-end-color
border-inline-start-color
border-inline-end-color
border-block-start
border-block-end
border-inline-start
border-inline-end
background-image-transform No
border-image-transform
Will Change
css-will-
change-1
will-change No No 36.0 No No No
CSSOM View
cssom-
view
scroll-behavior (optional[3]) No No 36.0 No No No
Scroll Snap Points
Early ideas
for css-
snappoints
scroll-snap-type 10.0 12 39.0[g 56] No No No
scroll-snap-points-x
scroll-snap-points-y
scroll-snap-destination
scroll-snap-coordinate
MSHTML EdgeHTML Gecko WebKit KHTML Presto
MSHTML notes
  1. margininherit inherits the computation and recomputes it instead of inheriting the computed value.[t 35]
  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 36] 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 37]
  5. content — In 8.0, computed attr() values are not updated when the attribute changes.[t 38]
  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 — MSHTML 9.0 renders box-shadow blur value at about half the declared value. Prior to 9.0, MSHTML supports similar functionality since 5.5 using the proprietary Shadow[t 39] and DropShadow[t 40] 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 41] In 8.0, floating point values are accepted in addition to integers.[t 42]
  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, MSHTML supported a proprietary alternative.[t 43]
  14. background-image — Prior to 8.0, background images are badly positioned in some cases.[t 44][t 45]
  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 46]
  18. text-align — In 8.0, text-align isn't inherited by :before and :after pseudo-elements.[t 47]
  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 48]
  20. cursor — Does not fail on non-prefixed vendor extensions.
  21. flex — Experimental in 10.0[t 49]
  22. break-after; break-before; break-inside — Though 10.0 does support break-after, break-before, and break-inside for columns, they do not appear to support the properties "region" and "avoid-region".
Gecko notes
  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 57]
  10. page-break-before; page-break-after — Only the always and auto values are supported.
WebKit notes
  1. max-width; max-height; min-width; min-height — Are not supported on tables.(as commented on 2012-12-18, it is fixed)[w 34]
  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 35]
  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 notes
  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 notes
  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 MSHTML.
  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 6]
  7. fontinherit should not be allowed together with a font-size value. This should not be parsed, but it's currently done in Opera.

Descriptors

MSHTML EdgeHTML Gecko WebKit KHTML Presto
@counter-style
css-
counter-
styles-
3
additive-symbols No No No[g 58] No No No
fallback
negative
pad
prefix
range
speak-as
suffix
symbols
system
@font-face
css-
fonts-
3
font-family Yes 12 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 36.0[g 59] No No No
@viewport
css-
device-
adapt-1
height 10.0[t 50] 12 No No No 2.7
max-height No No No
min-height
width 10.0[t 51] 12 2.7
max-width No No No
min-width
zoom 2.7
max-zoom
min-zoom
user-zoom
orientation No

Values and units

MSHTML EdgeHTML Gecko WebKit KHTML Presto
Numbers[spec 11]
CSS2 <number> A floating-point number 3.0 12 1.0 85 Yes 1.0
<length> <number> followed by units
<percentage> <number> followed by %
<integer> An integer
css-values-3 <angle> <number> angle-unit 9.0[t 1] 12 Yes Partial Partial Partial
<time> <number> time-unit 2.0[g 49] Yes Yes 2.5
<frequency> <number> frequency-unit No No No No
<fraction> Remaining space No No
Strings
CSS2 <string> String 3.0 12 1.0 85 Yes 1.0
\code Unicode escapes 6.0
Functions
CSS2 rect() A rectangle 8.0 12 1.0 85 Yes 1.0
url() Uniform Resource Identifier 3.0 12 1.0 85 Yes 1.0
counter() 8.0
attr() Attribute identifier
css-values-3 calc() 9.0[t 1] 12 16.0[g 60] Yes[w 36] No No
toggle() Toggling between values No No No[g 61] No No No
css-
grid-1
 ?
repeat() Repeat n times No No 32.0[g 62] No No No
Colors
CSS2 HTML4 color keywords 16 predefined web colors 3.0 12 1.0 85 Yes 1.0
#rrggbb or #rgb Hexadecimal notation
rgb(r, g, b) RGB notation 4.0
system colors[spec 12] 28 predefined system colors 3.0
css-color-3 SVG color keywords 8.0 12 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
hsl(h, s, l) HSL notation 1.5 3.5.5 2.1
hsla(h, s, l, a) HSLA notation 1.9 3.5.5 2.2
transparent Full transparency 9.0 1.9 4.0 Partial
Image values
CSS2 <url> Image types 3.0 12 1.0 85 Yes 1.0
css-
images-3
<sprite> No No No No No No
<image-list> No No No
<linear-gradient> 10.0[t 52] 12 16.0 Yes Experimental
<radial-gradient>
linear-gradient() Color gradients
radial-gradient()
repeating-linear-gradient()
repeating-radial-gradient()
css-
images-4
conic-gradient() No No No No No No
repeating-conic-gradient()
element() Reproduce element No No Experimental No No No
cross-fade() Transitioning between images No No No[g 63] No No No
image-set() Resolution negotiation No No No No No No
Counter Styles[spec 13]
css-
counter-
styles-3
symbols() Anonymous Counter Styles No No No No No No
Keywords
CSS2 auto Automatically calculated 6.0 12 1.0 85 Yes 1.0
inherit Inherited from the parent 8.0
css-values-3 initial No 13 19.0 125 No No
Units
CSS2 px Pixel 3.0 12 1.0 85 Yes 1.0
pt Point
pc Pica
cm Centimetre
mm Millimetre
in inch
em em
ex ex
% Percentage
css-values-3 deg Degree 9.0[t 1] 12 1.9.1 Yes Yes 2.5
grad Grad
rad Radian
turn turn 13.0[g 64] No No No
ms Millisecond 2.0[g 65] Yes Yes 2.5
s Second
Hz Hertz No No No No
kHz Kilohertz
dpi Dots per inch 12 1.9.1 No 4.1 2.5
dpcm Dots per centimetre
dppx Dots per pixel-unit 16.0 No ? No
earlier
draft of
css-line-
grid-1
gd Cells in the layout-grid No No No No No
unit being
considered
for css-
template-
3
fr Remaining space in a series of length values 12 No No No No
css-values-3 rem the font size of the root element 9.0[t 1] 1.9.2 Yes No 2.10.229[p 7]
vw the viewport's width 19.0[g 3] 28.0[w 37] No No
vh the viewport's height
vmin equal to the smaller of ‘vw’ or ‘vh’. No
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
Filter Effects
filter-
effects
grayscale() No 13 35.0[g 66] 18.0[w 38] No No
sepia()
saturate()
hue-rotate()
invert()
opacity()
brightness()
contrast()
blur()
drop-shadow()
Variables
css-
variables-
1
--* define variable No No 31.0[g 67] No No
var(--*) use variable
MSHTML EdgeHTML Gecko WebKit KHTML Presto
General notes
  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.
MSHTML notes
  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 notes
  1. <ch> — Prior to version 1.9.1, used the width of the "M" glyph instead of the width of the "0" glyph.[g 68]
Presto notes
  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 8]
  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.

See also

References

  1. Mackie, Kurt (10 December 2018). "Microsoft Edge Browser To Get New Rendering Engine but EdgeHTML Continues". https://redmondmag.com/articles/2018/12/10/edgehtml-continues.aspx. Retrieved 21 December 2019. 
  2. MDN: Web technology for developers: font kerning
  3. The cssom-view specification of this property says that “[u]ser agents may ignore this property.”
Specifications
MSHTML
  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 Internet Explorer Platform Preview Guide for Developers, Microsoft, http://msdn.microsoft.com/en-us/ie/ff468705.aspx 
  2. @keyframes rule (Internet Explorer), Microsoft, http://msdn.microsoft.com/en-US/library/ie/hh772747.aspx 
  3. "@-ms-viewport rule", Internet Explorer Dev Center (Microsoft), http://msdn.microsoft.com/en-us/library/ie/hh869615(v=vs.85).aspx 
  4. HTML5, Native: Third IE9 Platform Preview Available for Developers, Microsoft, http://blogs.msdn.com/b/ie/archive/2010/06/23/html5-native-third-ie9-platform-preview-available-for-developers.aspx 
  5. "valid pseudo-class (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772727. 
  6. "invalid pseudo-class (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772367. 
  7. "required pseudo-class (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772720. 
  8. "optional pseudo-class (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772709. 
  9. Hopkins, James, Attribute selector (which matches the attribute, 'colspan' for TD and TH elements) matches every TD and TH element, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=446817 
  10. Hammond, David, Comment on "IE 8 CSS 2.1 support results", http://www.webdevout.net/tidings/2009/03/23/ie-8-css-21-support-results/#comment-4168 
  11. first-letter Ignore Bug, hasLayout.net, http://haslayout.net/css/-first-letter-Ignore-Bug, retrieved 2010-01-29 
  12. Hopkins, James, Declaration which includes !important keyword is ignored when used within a :first-letter or :first-line rule, https://connect.microsoft.com/IE/feedback/details/478138/declaration-which-includes-important-keyword-is-ignored-when-used-within-a-first-letter-or-first-line-rule 
  13. Box-shadow, one of CSS3′s best new features - Browser's support (including IE9), WEBFLUX, http://www.css3.info/preview/box-shadow 
  14. content property doesn't return the value of an attribute when attribute is dynamically, http://idreamincode.co.uk/wp-content/uploads/2008/IE8Bugs/final-release/contentdynamic.html, retrieved 2011-03-12 
  15. "background-position-y property (Internet Explorer)". MSDN. https://msdn.microsoft.com/en-us/library/ie/ms530720(v=vs.85).aspx. 
  16. "font-size-adjust property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/jj127323. 
  17. "font-feature-settings property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh869409. 
  18. "@font-face rule (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/ms530757. 
  19. "-ms-hyphens property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771871. 
  20. "-ms-hyphenate-limit-zone property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771869. 
  21. "-ms-hyphenate-limit-chars property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771865. 
  22. "-ms-hyphenate-limit-lines property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771867. 
  23. "text-shadow property (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771872. 
  24. CSS 3 Text: A Tale of writing-mode Woe, http://www.zachleat.com/web/2010/02/12/css3-text-writing-mode/ 
  25. "-ms-text-combine-horizontal property". Microsoft. http://msdn.microsoft.com/en-us/library/ie/dn337005. 
  26. "@media rule (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/ms530813. 
  27. "Multi-column Layout (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771877. 
  28. "-ms-grid-columns property". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772246. 
  29. "-ms-grid-row property". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772254. 
  30. "Animations (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771874. 
  31. "Transforms (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772059. 
  32. "Transitions (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772060. 
  33. "Regions (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772715. 
  34. "Exclusions (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh772711. 
  35. Talbot, Inherited margin with inherit keyword: the computed value's parent should be inherited, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=344787 
  36. Groot, Sven, Overflow: scroll causes element to always have its max-height, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=408759 
  37. Hopkins, James, visibility:visible applied to inline element doesn't override inherited visibility:hidden value applied to its block-level parent, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=442805 
  38. Content: attr(x) isn't updated when the attribute's value change, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=434925 
  39. Shadow Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms533086(VS.85).aspx 
  40. DropShadow Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms532985(VS.85).aspx 
  41. Positioning, http://msdn.microsoft.com/en-us/library/cc351024(VS.85).aspx#positioning 
  42. Hopkins, James, Illegal parsing of a z-index decimal value, instead of an integer, https://connect.microsoft.com/IE/feedback/details/386914/illegal-parsing-of-a-z-index-decimal-value-instead-of-an-integer 
  43. Alpha Filter, Microsoft, http://msdn.microsoft.com/en-us/library/ms532967(VS.85).aspx 
  44. IE7-/Escaping Background Image Bug - Demo 1, http://css-class.com/test/bugs/ie/escaping-background-image-bug1.htm, retrieved 2010-01-29 
  45. IE7-/Escaping Background Image Bug - Demo 2, http://css-class.com/test/bugs/ie/escaping-background-image-bug2.htm, retrieved 2010-01-29 
  46. Koch, Peter-Paul, IE Windows and Opera - font-weight: 600 vs. bold, QuirksMode, http://www.quirksmode.org/css/tests/iewin_fontweight.html 
  47. Hopkins, James, 'text-align' value isn't inherited by ':before' and ':after' pseudo elements, https://connect.microsoft.com/IE/feedback/ViewFeedback.aspx?FeedbackID=454985 
  48. Font and Text, Microsoft, http://msdn.microsoft.com/en-us/library/cc351024#font 
  49. Flexible Box ("Flexbox") Layout, Microsoft, http://msdn.microsoft.com/en-us/library/ie/hh673531(v=vs.85).aspx 
  50. CSS Device Adaptation with @viewport, Treehouse Blog, 6 August 2013, http://blog.teamtreehouse.com/thinking-ahead-css-device-adaptation-with-viewport 
  51. CSS Device Adaptation with @viewport, Treehouse Blog, 6 August 2013, http://blog.teamtreehouse.com/thinking-ahead-css-device-adaptation-with-viewport 
  52. "Gradients (Internet Explorer)". Microsoft. http://msdn.microsoft.com/en-us/library/ie/hh771876. 
Gecko
  1. @supports - CSS, MDN, https://developer.mozilla.org/en-US/docs/Web/CSS/@supports 
  2. Bug 966166 - Implement @counter-style rule, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=966166 
  3. 3.0 3.1 "What's New", Firefox 19 Release Notes (Mozilla), https://website-archive.mozilla.org/www.mozilla.org/firefox_releasenotes/en-US/firefox/19.0/releasenotes/ 
  4. Bug 418039 - CSS parent (has-child) and ancestor (has-descendant) selectors (:subject), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=418039 
  5. Bug 813187 - Support CSS 2.1 @page Page Selectors, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=813187 
  6. Bug 506554 - Implement the CSS3 pseudo-classes :required and :optional, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=506554 
  7. Bug 312971 - Support :read-only and :read-write pseudoclasses, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=312971 
  8. Bug 561154 - fix specificity of :-moz-any(), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=561154 
  9. Bug 562169 - Implement the :dir(rtl/ltr) selector to select on HTML directionality, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=562169 
  10. Bug 843579 - Remove prefix from :any-link pseudo-class, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=843579 
  11. Bug 648722 - Add support for :scope as :-moz-scope, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=648722 
  12. Bug 237119 - property 'display' is ignored for generated content, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=237119 
  13. Bug 842329 - [css3-cascade implement the 'all' shorthand], Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=842329 
  14. Bug 451134 - change -moz-border-radius* properties to css3-background names, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=451134 
  15. Bug 378217 - implement css3 'border-image' property, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=378217 
  16. Bug 497995 - Implement border-image revisions in latest css3-background, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=497995 
  17. Bug 590039 - fix blur radius computation and rename -moz-box-shadow to box-shadow, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=590039 
  18. Bug 470547 - Spread (4th length) for text-shadow not supported, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=470547 
  19. 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, https://bugzilla.mozilla.org/show_bug.cgi?id=613659 
  20. Bug 549809 - Rename background-origin and background-clip properties and values to match css3-background, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=549809 
  21. Bug 3512 - (font-stretch) Implement font-stretch property, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=3512 
  22. Bug 549861 - (font-variant) implement parsing of font feature properties, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=font-variant 
  23. Bug 475891 - (unicode-range) implement unicode-range support in user font set, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=unicode-range 
  24. Bug 249159 - implement 'word-break' properties of CSS3, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=249159 
  25. hyphens - MDN Docs, Mozilla, https://developer.mozilla.org/en/CSS/hyphens  (Only English)
  26. Bug 587438 - word-wrap, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=587438 
  27. Bug 536557 - Implement CSS3 text-align-last, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=536557 
  28. Bug 276079 - Implement text-justify property(but 'auto', 'inter-word', 'inter-ideograph' and 'distribute' only), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=276079 
  29. Bug 59109 - implement CSS3 text module's text-decoration-style and text-decoration-color, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=59109 
  30. Firefox 6 for developers, Mozilla, https://developer.mozilla.org/en/Firefox_6_for_developers, retrieved 2011-04-24 
  31. Bug 145503 - (writing-mode) CSS3 writing-mode (vertical text), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=145503 
  32. Implement 'box-sizing', Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=243412 
  33. Bug 553576 - Implement css resize property behaviour, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=553576 
  34. Bug 312156 - implement text-overflow: ellipsis from CSS3 text, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=312156 
  35. Bug 132035 - Implement missing page-break-* CSS2.1 features, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=132035 
  36. Bug 137367 - Implement orphans and widows, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=137367 
  37. Bug 851937 - Support for @page size, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=851937 
  38. Bug 825771 - [css3-images implement 'image-orientation' property], Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=825771 
  39. Bug 624647 - [css3-images Implement object-fit and object-position CSS properties], Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=624647 
  40. Bug 47159 - Support css3-speech (previously Aural Style Sheet) properties in getComputedStyle, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=47159 
  41. Bug 256274 - Implement CSS ruby module, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=256274 
  42. Bug 684062 - Compare spec and implement CSS multi-column support, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=684062 
  43. Bug 446569 - Implement CSS3 columns shorthand, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=446569 
  44. Bug 549114 - Support Column Breaks, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=549114 
  45. Bug 695222 - Implement column-fill, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=695222 
  46. Bug 616436 - column-span not implemented (css3 multicolumn), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=616436 
  47. Bug 616605 - CSS Grid Layout, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=616605 
  48. Bug 435442 - Implement Webkit's CSS Animation proposal, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=435442 
  49. 49.0 49.1 Bug 435441 - get CSS transitions complete enough to ship, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=537142 
  50. Bug 783409 - Turn on CSS flexbox in builds by default (by enabling pref, build flag, etc), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=783409 
  51. Bug 674802 - implement CSS3 Regions, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=674802 
  52. Bug 674804 - implement CSS3 Exclusions, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=674804 
  53. Bug 1057180 - Turn on CSS Filters by default (by enabling about:config pref), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=1057180 
  54. Bug 795567 - Implement touch-action CSS property for Pointer Events, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=795567 
  55. Bug 1138384 - (enable-writing-mode-release) enable CSS writing-mode support in release channels, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=1138384 
  56. Bug 945584 - Implement CSS scroll snapping, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=945584 
  57. Bug 382721 - Dotted/dashed -moz-border-radiused corners are rendered as solid, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=382721 
  58. Bug 843718 - (css-counter-styles-3) Implement CSS Counter Styles Level 3, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=843718 
  59. Bug 475891 - (unicode-range) implement unicode-range support in user font set, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=unicode-range 
  60. Bug 363249 - implement css3-values calc(), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=363249 
  61. Bug 363250 - implement toggle() expression, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=363250 
  62. Bug 978478 - Support repeat() in CSS Grid templates, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=978478 
  63. Bug 546052 - Support CSS transitions with background-image images (cross-fading), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=546052 
  64. Bug 716628 - Support "turn" unit from CSS3 Values and Units, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=716628 
  65. Bug 435441 - Implement Webkit's CSS Transitions proposal, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=435441 
  66. Bug 1057180 - Turn on CSS Filters by default (by enabling about:config pref), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=1057180 
  67. Bug 773296 - CSS Variables, Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=773296 
  68. Bug 282126 - What to do about the 'ch' length unit? (Mozilla vendor specific), Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=282126 
Webkit
  1. @supports - CSS, MDN, https://developer.mozilla.org/en-US/docs/Web/CSS/@supports 
  2. Bug 747754 - [CSS-WD implement CSS Device Adaptation], Mozilla, https://bugzilla.mozilla.org/show_bug.cgi?id=747754 
  3. Bug 35329 - Enhance CSS parser for Paged Media (Iteration 1), WebKit, https://bugs.webkit.org/show_bug.cgi?id=35329 
  4. Bug 85062 - Support CSS 3 Paged Media Margin Boxes, WebKit, https://bugs.webkit.org/show_bug.cgi?id=85062 
  5. Bug 38731 - Make CSS Parser properly handle only-for-pages pseudo-classes, WebKit, https://bugs.webkit.org/show_bug.cgi?id=38731 
  6. Bug 27458 - Support :default HTML5 CSS selector, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27458 
  7. Bug 27357 - Support :valid/:invalid CSS selectors, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27357 
  8. Bug 29071 - Support for :in-range and :out-of-range CSS selectors, Webkit, https://bugs.webkit.org/show_bug.cgi?id=29071 
  9. Bug 25551 - Support for HTML5 Forms "required" attribute, Webkit, https://bugs.webkit.org/show_bug.cgi?id=25551 
  10. Bug 3409 - CSS1: Safari ignores "text-transform" attribute in "first-line" CSS rules, Webkit, https://bugs.webkit.org/show_bug.cgi?id=3409 
  11. Bug 23209 - [RFE] CSS Generated Content does not transition, Webkit, https://bugs.webkit.org/show_bug.cgi?id=23209 
  12. Bug 27578 - Drop the prefix from the border-radius properties, Webkit, https://bugs.webkit.org/show_bug.cgi?id=27578 
  13. Bug 51448 - Support unprefixed box-shadow property, WebKit, https://bugs.webkit.org/show_bug.cgi?id=51448 
  14. Bug 27576 - [CSS3 Backgrounds and Borders] Implement box-decoration-break, WebKit, https://bugs.webkit.org/show_bug.cgi?id=27576 
  15. Bug 3234 - CSS2: Implement better quote support (for the q tag), Webkit, https://bugs.webkit.org/show_bug.cgi?id=3234 
  16. Bug 27562 - Drop the prefixes from background-clip and background-origin, WebKit, https://bugs.webkit.org/show_bug.cgi?id=27562 
  17. [CSS3 Backgrounds and Borders] Drop the prefix from background-size, WebKit, https://bugs.webkit.org/show_bug.cgi?id=27575 
  18. Bug 15257 - Support CSS 3 font-size-adjust, Webkit, https://bugs.webkit.org/show_bug.cgi?id=15257 
  19. Bug 12530 - CSS3: Support the font-stretch property, Webkit, https://bugs.webkit.org/show_bug.cgi?id=12530 
  20. Bug 63796 - Master: Support CSS3 font feature properties, Webkit, https://bugs.webkit.org/show_bug.cgi?id=63796 
  21. Bug 76173 - CSS3: text-align-last on webkit, Webkit, https://bugs.webkit.org/show_bug.cgi?id=76173 
  22. Bug 18109 - Implement hanging punctuation, Webkit, https://bugs.webkit.org/show_bug.cgi?id=18109 
  23. Bug 58491 - [css3-text] Support text-decoration-* properties from CSS3 Text, Webkit, https://bugs.webkit.org/show_bug.cgi?id=58491 
  24. Bug 46123 - Implement writing-mode support for all of layout (master bug), WebKit, https://bugs.webkit.org/show_bug.cgi?id=46123 
  25. Bug 36713 - Support box-sizing without the vendor prefix, WebKit, https://bugs.webkit.org/show_bug.cgi?id=36713 
  26. Bug 10894 - CSS "size" property is not supported, Webkit, https://bugs.webkit.org/show_bug.cgi?id=10894 
  27. Bug 46827 - AX: implement CSS3 Speech "speak", WebKit, https://bugs.webkit.org/show_bug.cgi?id=46827 
  28. Bug 15552 - Support CSS3 column-break-before and column-break-after, WebKit, https://bugs.webkit.org/show_bug.cgi?id=15552 
  29. Bug 39498 - [CSS3 Multi-column] Floating elements are rendered below the columns, WebKit, https://bugs.webkit.org/show_bug.cgi?id=39498#c7 
  30. Bug 15550 - WebKit does not support CSS3 column-span, Webkit, https://bugs.webkit.org/show_bug.cgi?id=15550 
  31. Bug 60731 - Implement CSS3 Grid Layout (master bug), Webkit, https://bugs.webkit.org/show_bug.cgi?id=60731 
  32. flex - CSS, MDN, https://developer.mozilla.org/en-US/docs/Web/CSS/flex 
  33. filter - CSS, MDN, https://developer.mozilla.org/en-US/docs/Web/CSS/filter 
  34. Bug 25016 - max-width and max-height are not overriding the width and height properties when 'display' set to 'table', Webkit, https://bugs.webkit.org/show_bug.cgi?id=25016 
  35. Bug 8735 - CSS 2.1 visibility: collapse rendered as visibility: hidden, Webkit, https://bugs.webkit.org/show_bug.cgi?id=8735 
  36. Bug 16662 - CSS3: Implement calc(), Webkit, https://bugs.webkit.org/show_bug.cgi?id=16662 
  37. Can I use Viewport units, Can I Use, http://caniuse.com/viewport-units 
  38. filter - CSS, MDN, https://developer.mozilla.org/en-US/docs/Web/CSS/filter 
Presto