- From: Andrei Polushin <polushin@gmail.com>
- Date: Mon, 10 Mar 2008 01:37:09 +0600
- To: www-style@w3.org
L. David Baron wrote: > Compare the following: > http://dbaron.org/css/test/2008/import-after-page > http://dbaron.org/css/test/2008/import-after-pagg > http://dbaron.org/css/test/2008/import-after-media > > In Firefox, the first two are green, since @page is not supported or > parsed. But the third is black and underlined. The same is true of > IE7. This means the ignored @page and @pagg rules are not used to > determine whether to ignore the @import, but the used @media rule is. > > In Opera 9.26, the one with @page is black (@import ignored), but the > one with @pagg is green (@import used). This makes sense since @page is > supported in Opera. > > In Safari 3.0.4, all three are black (so there is some inconsistency). > > > I don't think any clarification to the spec is strictly needed, since > http://www.w3.org/TR/2007/CR-CSS21-20070719/syndata.html#at-rules says: > # CSS 2.1 user agents must ignore any '@import' rule that occurs > # inside a block or after any valid statement other than an @charset > # or an @import rule. > Note the "any *valid* statement". This requirement is a conformance > requirement on user agents. That requirement directly provokes the hackish behavior. Having that, author may conditionally import stylesheet depending on UA capabilities: @page { @top-left { } } @import url(browsers-without-css3-page-support.css) @page {} @import url(browsers-without-css21-page-support.css) The same hacks could be applied to other rules. Was that the intent? -- Andrei Polushin
Received on Sunday, 9 March 2008 19:37:28 UTC