CSS Cascading and Inheritance Level 3 Implementation Report

Last updated

The following new features were added in Level 3:

Feature Gecko Blink WebKit EdgeHTML
all shorthand 27+ 37+ 525+ ×
initial keyword 19+ 28+ 532+ 12+
unset keyword 27+ 41+ 601.5+ 13+

Version data sourced from caniuse.com and Wikipedia

The following module integrations were defined in Level 3:

Feature Gecko Blink WebKit EdgeHTML
Media Queries + @import ○ ○ ○ ○
Animations + Cascade ○ ○ × ?
Transitions + Cascade ○ ○ ○ ○

Detailed Testing

Tables below include Gecko, Blink, and WebKit results for Level 3 features.

Test Interop? Results Live
all Shorthand
all does not set direction or unicode-bidi ○ 3/3 Pass Test
all does set display ○ 3/3 Pass Test
all: inherit is overridden by subsequent declarations ○ 3/3 Pass Test
all: initial is overridden by subsequent declarations ○ 3/3 Pass Test
all: unset is overridden by subsequent declarations ○ 3/3 Pass Test
initial Keyword
initial sets inherited and uninherited properties to their initial value ○ 3/3 Pass Test
unset Keyword
unset sets inherited properties to inherit, and uninherited properties to their initial value ○ 3/3 Pass Test
unset sets uninherited properties to their initial value despite UA style sheet declarations to the contrary ○ 3/3 Pass Test
Media Queries + @import Integration
@import rules with simple media queries are supported ○ 3/3 Pass Test
Animations + Cascade Integration
Author non-!important is overridden by animation ○ 3/3 Pass Test
Author !important overrides animation △ 2/3 Pass Test
!important is invalid in @keyframes ○ 3/3 Pass Test
Transitions + Cascade Integration
Transitions work across importance levels ○ 3/3 Pass Test

Untested

The following test could be written in theory, but would require special configuration of the user agent:

The following tests could be written in theory, but correct behavior is implied by passing the CSS2 user-stylesheet tests together with the Level 3 tests: