Diskussion ⏳
Scoped Style

Stylesheets aus eingebundenen Dateien sollen auch nur den eingebundenen Bereich betreffen und nicht das komplette Dokument, wohingegen Stylesheets aus dem Hauptdokument auch auf eingebundene Bereiche wirken sollen.

  1. Browser-Support für @scope-Regel:
    https://caniuse.com/css-cascade-scope

  2. Es gibt in letzter Zeit wieder Bewegung im Bereich scoped styles:
    https://github.com/w3c/csswg-drafts/issues/3547
    https://github.com/w3c/csswg-drafts/issues/5809
    https://github.com/w3ctag/design-reviews/issues/593

  3. > … oder ob man die Möglichkeit zusätzlich, also
    > alternativ zu @style/@stylesheet, anbieten muss …

    Dies.

  4. HTML5 versprach <style scoped>, es wurde gestrichen. CSS @scope wurde verschoben oder gestrichen. Shadow-DOM ohne JavaScript zu nutzen wurde abgelehnt. <iframe seamless> wurde gestrichen. Einen Referenzcode bereitzustellen, wie man in CSS vor jede Anweisung eine Container-ID anfügt, wurde abgelehnt. Es gab zig Anläufe und Pläne, irgend eine Form von scoped styles in HTML/CSS einzuführen und keine wurde umgesetzt. Aber die Hoffnung stirbt zuletzt …

    Eigentlich sollten Stylesheets in Aneamal *immer* auf einen Geltungsbereich beschränkt sein. Wenn das irgendwann möglich sein wird, stellt sich die Frage, ob man diese Umstellung dann noch vornehmen kann, oder ob man die Möglichkeit zusätzlich, also alternativ zu @style/@stylesheet, anbieten muss, weil Nutzer sich die eigentlich nicht erwünschte globale Geltung der Stylesheets auch zunutze machen. Nebenbei bemerkt: @look betrifft das nicht, da die Angabe nur im Hauptdokument (das, was aufgerufen wurde und ggf. andere einbindet) ausgewertet wird.