- From: John Daggett <jdaggett@mozilla.com>
- Date: Tue, 10 Nov 2015 14:43:34 +0900
- To: Ryosuke Niwa <rniwa@apple.com>
- Cc: www-style list <www-style@w3.org>
- Message-ID: <CALYZoVPt_SrFhNfd=6GpuiOJNnprf+G8Zdqp1k-LfdS6-bQ3EQ@mail.gmail.com>
Ryosuke Niwa wrote: > We would like to make a declaration of @font-face scoped to the shadow > DOM in which it is defined and have a higher precedence over > @font-face defined outside the shadow DOM. > > While not ideal, we think it's okay to let @font-face defined outside > the shadow DOM to bleed into the shadow DOM since that is needed to > support the common scenario of matching the style outside the shadow > DOM. We can solve this problem in the future by providing a mechanism > to hide @font-face. I don't know what precisely you're proposing here but @font-face rules don't have "precedence", they don't override one another. Example: @font-face { font-family: test; src: url(xxx.woff); } @font-face { font-family: test; src: url(yyy.woff); } <p style="font-family: test">Hello</p> This produces a font family for which yyy.woff will be loaded first. After it's loaded, if the font in yyy.woff doesn't cover all glyphs in content, xxx.woff will then be loaded. The second @font-face rule is added to the family. So I think you need to define more precisely what you'd like here. Do you want @font-face rules defined in the shadow DOM to be scoped to only affect font usage within the shadow DOM? Define a separate FontFaceSet that contains the @font-face rules in the DOM along with the ones in the shadow DOM, with ordering in document definition order. That will have no affect on @font-face rules in the DOM other than their load state. > On the other hand, @font-face inside a shadow DOM overriding > @font-face outside the shadow DOM will break one major feature of > shadow DOM: style rules in a shadow DOM do not affect nodes outside > the shadow DOM. In particular, @font-face defined in one shadow DOM > should not affect fonts used in another shadow DOM. Here again, not sure what you mean by "overriding". @font-face rules accumulate, they don't override. And how is any node affected outside the shadow DOM's with whatever you're imagining?
Received on Tuesday, 10 November 2015 05:44:04 UTC