ShadowRoot: Neue Aufruf-Methode für CSS-Regeln

  • Ich habe das mal etwas reduziert, scheint soweit zu funktionieren. :/
    Icons in shadow-root könnte man damit im Prinzip auch ändern mit einem relativen Pfad, dazu habe ich aber keine komplett überzeugende Lösung gefunden.

    Der Unterschied zum Original ist, dass man nur das JS Script benötigt, in das man die ::part Veränderungen direkt einträgt, ohne zusätzliche CSS Datei.

  • @Horstmann 
    Wenn ich keine CSS-Hervorhebung im jeweiligen Editor möchte, kann ich das CSS einfach nur in js einbinden (auch shadowroot funzt damit). Genauso war es in der Zeit vor diesem wirklich nützlichen Script.

    Icons in shadow-root könnte man damit im Prinzip auch ändern mit einem relativen Pfad, dazu habe ich aber keine komplett überzeugende Lösung gefunden

    Ich mach das so (In dieser Datei befindet sich lediglich der relative Pfad auf das Icon; fill usw. nicht):

    Hier die dazugehörige userChromeShadow.css:

  • Ich bin 100% pro Separierung von CSS und JS! :)
    Auch wegen der Darstellung im Editor, und des einfachen Live Bearbeiten in den Browser Werkzeugen.
    Beim Bauen und Testen von JS Scripts benutze ich solange es geht separate CSS Dateien, oder benutze ein CSS Editor Fenster zur Fehlersuche im CSS Teil.

    Aber versucht das mal den Leuten zu verkaufen. ;)
    Abgesehen von diesem hier, fällt mir kein JS Script ein, das kein integriertes CSS benutzt, und nicht versucht möglichst alle User Einstellungen oben zu sammeln.

    In diesem speziellen Fall fand ich es nur praktisch alles in einer Datei zu haben; vermutlich sind die meisten ::part Modifikationen eher übersichtlich.

    shadow-root scheint generell in JS Scripts zu funktionieren, wenn man etwa sss.loadAndRegisterSheet(uri, sss.AUTHOR_SHEET); statt ....AGENT_SHEET benutzt. :/

    Einmal editiert, zuletzt von Horstmann (23. Dezember 2025 um 15:18)

  • Die Datei userChromeShadow.css funktioniert einwandfrei, wenn die Stile direkt darin liegen. Ich kann jedoch keine Stile aus dem Ordner /chrome/CSSShadow/ importieren, weder mit einem absoluten noch mit einem relativen Pfad. Die Importbefehle sind in userChromeShadow.css definiert. Oder ist das etwa unmöglich? :/

  • Oder ist das etwa unmöglich?

    So sieht das hier mit dem Pfad aus:

    Code
    @import url("file:C:/Users/weiss/AppData/Roaming/Mozilla/Firefox/Profiles/7hfpu74u.Test Fx/chrome/CSSShadow/Lesezeichen Popup rot.css");

    und das funktioniert:


    Du hast im Ordner chrome diese Datei für den Aufruf?

    Mit freundlichem Gruß
    Andreas
    Mein Laptop  Meine Add-ons

    Einmal editiert, zuletzt von 2002Andreas (11. August 2026 um 13:42) aus folgendem Grund: Ein Beitrag von 2002Andreas mit diesem Beitrag zusammengefügt.