Yes, this is a bug that's been fixed and will be corrected in the next version of Chrome (crbug.com/355674).
The `::content` pseudo-element from the first shadowRoot is matching `<shadow>` in the second shadowRoot and it should not because of style scoping. On Fri, Jul 18, 2014 at 10:48 AM, cletusw <[email protected]> wrote: > I'm seeing some weird Shadow DOM styling inconsistencies between Chrome 36 > Stable and Chrome Canary. Given this setup: > > <multiple-shadows> > <h5 class="match">Matches</h5> > <h5>Doesn't Match</h5> > </multiple-shadows> > > <script> > var host = document.querySelector('multiple-shadows'); > host.createShadowRoot().innerHTML = '\ > <style> \ > ::content :not(.match) { \ > display: none; \ > } \ > </style> \ > <h4>Second-level shadow</h4> \ > <content></content> \ > '; > host.createShadowRoot().innerHTML = '\ > <h4>First-level shadow</h4> \ > <shadow></shadow> \ > '; > </script> > > Canary renders as expected, producing: > > First-level shadow > > Second-level shadow > > Matches > > Chrome 36, however, gives: > > First-level shadow > > Matches > > If I prefix the '::content' selector with 'content' ('content::content'), > however, then it works as in Canary. It looks like the styles that the > first (older) shadow root brings are being executed in the context of the > second shadow root *and* are applying to things coming through its > <shadow> tag (which is why forcing the CSS to only apply to <content> tags > fixes the symptom). > > Is this a bug? Or is this known old functionality that has been changed in > Canary? > > Here's the jsbin. <http://jsbin.com/titogaya/1/edit> And here's same > problem using Polymer <http://jsbin.com/tiwivoyu/1/edit> (sometimes you > have to click "Run with JS" after the page loads for platform.js to load > correctly). > > Note: This is not caused by the :not() selector. If you remove it and add > the match class to the <h4>, the <h4> still gets hidden. > > Follow Polymer on Google+: plus.google.com/107187849809354688692 > --- > You received this message because you are subscribed to the Google Groups > "Polymer" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/polymer-dev/36efbaad-d5ec-4003-8292-b6d9ea9414fa%40googlegroups.com > <https://groups.google.com/d/msgid/polymer-dev/36efbaad-d5ec-4003-8292-b6d9ea9414fa%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > Follow Polymer on Google+: plus.google.com/107187849809354688692 --- You received this message because you are subscribed to the Google Groups "Polymer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/polymer-dev/CA%2BrMWZgwQnmG4G5eFq4XVma68SFpd42CTSWkXd-3wUmH7L%2Bysw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
