Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. (gelöst) eigene CSS Klasse (dynamisch)

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    925

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

(gelöst) eigene CSS Klasse (dynamisch)

Geplant Angeheftet Gesperrt Verschoben Gelöst Visualisierung
vis
16 Beiträge 3 Kommentatoren 963 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ice987I ice987

    Hallo zusammen,

    ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:

    <div class="title1">title1 blabla</div>
    <div class="subtitle1">subtitle1 blabla</div>
    

    Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
    in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import url('/vis.0/main/css/css_light.css')" :: "@import url('/vis.0/main/css/css_dark.css')"}. Die beiden Dateien liegen im Verzeichnis /vis.0/main/css/.

    css_light.css hat den Inhalt:

    .title1 {
        font-family: Arial;
        color: #ff0000;
        font-weight: bold;
    }
    .subtitle1 {
        font-family: Arial;
        color: #ff0000;
    }
    

    css_dark.css hat den Inhalt:

    .title1 {
        font-family: Arial;
        color: #fff000;
        font-weight: bold;
    }
    .subtitle1 {
        font-family: Arial;
        color: #fff000;
    }
    

    leider funktioniert das nicht :confused: Gibt es eine andere Möglichkeit, mehrere Klassen per Binding in einem "HTML-Widget" zu dynamisch zu definieren?

    liv-in-skyL Offline
    liv-in-skyL Offline
    liv-in-sky
    schrieb am zuletzt editiert von
    #2

    @ice987 sagte in eigene CSS Klasse:

    @import url('/vis.0/main/css/css_light.css')

    funktioniert das, wenn du nur "@import url('/vis.0/main/css/css_light.css')" einträgst - erstmal ohne abfrage ?

    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

    ice987I 1 Antwort Letzte Antwort
    0
    • liv-in-skyL liv-in-sky

      @ice987 sagte in eigene CSS Klasse:

      @import url('/vis.0/main/css/css_light.css')

      funktioniert das, wenn du nur "@import url('/vis.0/main/css/css_light.css')" einträgst - erstmal ohne abfrage ?

      ice987I Offline
      ice987I Offline
      ice987
      schrieb am zuletzt editiert von
      #3

      @liv-in-sky
      (erwischt... wenn man den Wald vor lauter Bäumen nicht sieht) leider funktioniert das nicht... somit ist mein Ansatz unbrauchbar. Gibt's ggf. eine andere Möglichkeit?

      husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

      liv-in-skyL 1 Antwort Letzte Antwort
      0
      • ice987I ice987

        @liv-in-sky
        (erwischt... wenn man den Wald vor lauter Bäumen nicht sieht) leider funktioniert das nicht... somit ist mein Ansatz unbrauchbar. Gibt's ggf. eine andere Möglichkeit?

        liv-in-skyL Offline
        liv-in-skyL Offline
        liv-in-sky
        schrieb am zuletzt editiert von
        #4

        @ice987

        teste gerade,

        man kann doch mehrere klassen angeben, evtl kannst du dann deine css's direkt in den tab schreiben und 2 formel einfügen

        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

        ice987I 1 Antwort Letzte Antwort
        0
        • liv-in-skyL liv-in-sky

          @ice987

          teste gerade,

          man kann doch mehrere klassen angeben, evtl kannst du dann deine css's direkt in den tab schreiben und 2 formel einfügen

          ice987I Offline
          ice987I Offline
          ice987
          schrieb am zuletzt editiert von
          #5

          @liv-in-sky
          das mit mehreren Klassen habe ich auch erfolgreich getestet, funktioniert auch im Binding. Die Frage ist nun nur, ob diese dynamisch, z.b. aus einer eigenen CSS-Datei, angesprochen werden könnte. Es gäbe natürlich die Möglichkeit, alle Klassen 2x im Binding einzufügen, was aber recht umständlich ist...

          husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

          liv-in-skyL 2 Antworten Letzte Antwort
          0
          • ice987I ice987

            Hallo zusammen,

            ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:

            <div class="title1">title1 blabla</div>
            <div class="subtitle1">subtitle1 blabla</div>
            

            Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
            in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import url('/vis.0/main/css/css_light.css')" :: "@import url('/vis.0/main/css/css_dark.css')"}. Die beiden Dateien liegen im Verzeichnis /vis.0/main/css/.

            css_light.css hat den Inhalt:

            .title1 {
                font-family: Arial;
                color: #ff0000;
                font-weight: bold;
            }
            .subtitle1 {
                font-family: Arial;
                color: #ff0000;
            }
            

            css_dark.css hat den Inhalt:

            .title1 {
                font-family: Arial;
                color: #fff000;
                font-weight: bold;
            }
            .subtitle1 {
                font-family: Arial;
                color: #fff000;
            }
            

            leider funktioniert das nicht :confused: Gibt es eine andere Möglichkeit, mehrere Klassen per Binding in einem "HTML-Widget" zu dynamisch zu definieren?

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von OliverIO
            #6

            @ice987 sagte in eigene CSS Klasse:

            Hallo zusammen,
            ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:
            <div class="title1">title1 blabla</div> <div class="subtitle1">subtitle1 blabla</div>
            Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
            in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import

            @import ist doch ein css Befehl.
            Im html Widget ist ja erst einmal html der Standard.
            Wenn du da JavaScript reinmachen willst dann musst du den Code in <Script> Tags schreiben.

            Wenn du dann den Import Befehl hinzufügen möchtest, musst du per JavaScript ein Style Tag erzeugen und dann in das Style Tag den @import Befehl reinschreiben.
            Sobald du die Style Node der Dom hinzufügst, sollte das auch geladen werden.
            Beim Wechseln solltest du natürlich den anderen styletag wieder entfernen.

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            liv-in-skyL 2 Antworten Letzte Antwort
            0
            • ice987I ice987

              @liv-in-sky
              das mit mehreren Klassen habe ich auch erfolgreich getestet, funktioniert auch im Binding. Die Frage ist nun nur, ob diese dynamisch, z.b. aus einer eigenen CSS-Datei, angesprochen werden könnte. Es gäbe natürlich die Möglichkeit, alle Klassen 2x im Binding einzufügen, was aber recht umständlich ist...

              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #7

              @ice987

              wie du sagst, so gehts:

              Image 2.png

              {var1:sonoff.1.MCUDoppelSchalter.POWER2; var1=="true" ? "norm":""} {var1:sonoff.1.MCUDoppelSchalter.POWER2; var1=="true" ? "big":""}
              

              Image 1.png

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              1 Antwort Letzte Antwort
              1
              • OliverIOO OliverIO

                @ice987 sagte in eigene CSS Klasse:

                Hallo zusammen,
                ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:
                <div class="title1">title1 blabla</div> <div class="subtitle1">subtitle1 blabla</div>
                Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
                in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import

                @import ist doch ein css Befehl.
                Im html Widget ist ja erst einmal html der Standard.
                Wenn du da JavaScript reinmachen willst dann musst du den Code in <Script> Tags schreiben.

                Wenn du dann den Import Befehl hinzufügen möchtest, musst du per JavaScript ein Style Tag erzeugen und dann in das Style Tag den @import Befehl reinschreiben.
                Sobald du die Style Node der Dom hinzufügst, sollte das auch geladen werden.
                Beim Wechseln solltest du natürlich den anderen styletag wieder entfernen.

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                schrieb am zuletzt editiert von
                #8

                @oliverio

                muss man die css datei eigentlich mit writefile schreiben bzw mit dem vis editor importieren? oder legt man die einfach im dateiverzeichnis an

                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                0
                • ice987I ice987

                  @liv-in-sky
                  das mit mehreren Klassen habe ich auch erfolgreich getestet, funktioniert auch im Binding. Die Frage ist nun nur, ob diese dynamisch, z.b. aus einer eigenen CSS-Datei, angesprochen werden könnte. Es gäbe natürlich die Möglichkeit, alle Klassen 2x im Binding einzufügen, was aber recht umständlich ist...

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #9

                  @ice987

                  {var1:sonoff.1.MCUDoppelSchalter.POWER2; var1=="true" ? "norm big":""}
                  

                  funktioniert auch - also nur ein binding !

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #10

                    @liv-in-sky sagte in eigene CSS Klasse:

                    @oliverio

                    muss man die css datei eigentlich mit writefile schreiben bzw mit dem vis editor importieren? oder legt man die einfach im dateiverzeichnis an

                    Ja mit writefile. Ansonsten kennt Iobroker die Datei nicht,
                    Obwohl sie da ist.

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @ice987 sagte in eigene CSS Klasse:

                      Hallo zusammen,
                      ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:
                      <div class="title1">title1 blabla</div> <div class="subtitle1">subtitle1 blabla</div>
                      Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
                      in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import

                      @import ist doch ein css Befehl.
                      Im html Widget ist ja erst einmal html der Standard.
                      Wenn du da JavaScript reinmachen willst dann musst du den Code in <Script> Tags schreiben.

                      Wenn du dann den Import Befehl hinzufügen möchtest, musst du per JavaScript ein Style Tag erzeugen und dann in das Style Tag den @import Befehl reinschreiben.
                      Sobald du die Style Node der Dom hinzufügst, sollte das auch geladen werden.
                      Beim Wechseln solltest du natürlich den anderen styletag wieder entfernen.

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #11

                      @oliverio sagte in eigene CSS Klasse:

                      Wenn du dann den Import Befehl hinzufügen möchtest, musst du per JavaScript ein Style Tag erzeugen und dann in das Style Tag den @import Befehl reinschreiben.
                      Sobald du die Style Node der Dom hinzufügst, sollte das auch geladen werden.
                      Beim Wechseln solltest du natürlich den anderen styletag wieder entfernen.

                      meinst du mit jquery ? also einen dp abfragen und dann über z.b jquery einfügen ?

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      0
                      • ice987I ice987

                        Hallo zusammen,

                        ich möchte die Farbgestaltung meiner Visualisierung per Day/Nightmode (Binding) umschalten. Nun habe ich ein "basic - HTML"-Widget mit z.B. folgendem Inhalt:

                        <div class="title1">title1 blabla</div>
                        <div class="subtitle1">subtitle1 blabla</div>
                        

                        Meine Idee war nun, zwei CSS-Dateien anzulegen, welche per Binding umgeschalten werden:
                        in VIS unter Eigenschaften -> Reiter "w00xxx" -> CSS Klasse: {lightmode:0_userdata.0.navigation.lightMode;lightmode === "true" ? "@import url('/vis.0/main/css/css_light.css')" :: "@import url('/vis.0/main/css/css_dark.css')"}. Die beiden Dateien liegen im Verzeichnis /vis.0/main/css/.

                        css_light.css hat den Inhalt:

                        .title1 {
                            font-family: Arial;
                            color: #ff0000;
                            font-weight: bold;
                        }
                        .subtitle1 {
                            font-family: Arial;
                            color: #ff0000;
                        }
                        

                        css_dark.css hat den Inhalt:

                        .title1 {
                            font-family: Arial;
                            color: #fff000;
                            font-weight: bold;
                        }
                        .subtitle1 {
                            font-family: Arial;
                            color: #fff000;
                        }
                        

                        leider funktioniert das nicht :confused: Gibt es eine andere Möglichkeit, mehrere Klassen per Binding in einem "HTML-Widget" zu dynamisch zu definieren?

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        schrieb am zuletzt editiert von
                        #12

                        @ice987

                        Um die Vorgehensweise nochmal zu verdeutlichen.

                        Ihr schreibt eine javascriptfunktion mit der oben genannten Logik in Script Tag und packt die in ein html Widget.

                        In einem binding, welches auf den datenpunkt reagiert, ruft ihr dann diese Funktion auf. Das binding muss im selben html Widget stehen

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        ice987I 2 Antworten Letzte Antwort
                        1
                        • OliverIOO OliverIO

                          @ice987

                          Um die Vorgehensweise nochmal zu verdeutlichen.

                          Ihr schreibt eine javascriptfunktion mit der oben genannten Logik in Script Tag und packt die in ein html Widget.

                          In einem binding, welches auf den datenpunkt reagiert, ruft ihr dann diese Funktion auf. Das binding muss im selben html Widget stehen

                          ice987I Offline
                          ice987I Offline
                          ice987
                          schrieb am zuletzt editiert von
                          #13

                          @oliverio
                          Vielen Dank für deine Hilfe!
                          Ich generiere eine html-Tabelle in einem Javascript, schreibe dieses in einen DP. Per Binding lasse ich mir dieses im html-Widget anzeigen. Funktioniert das Umschalten dann auch?

                          husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                          OliverIOO liv-in-skyL 2 Antworten Letzte Antwort
                          0
                          • ice987I ice987

                            @oliverio
                            Vielen Dank für deine Hilfe!
                            Ich generiere eine html-Tabelle in einem Javascript, schreibe dieses in einen DP. Per Binding lasse ich mir dieses im html-Widget anzeigen. Funktioniert das Umschalten dann auch?

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von
                            #14

                            @ice987
                            Theoretisch ja. Hab selbst sowas nie probiert

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            1 Antwort Letzte Antwort
                            0
                            • ice987I ice987

                              @oliverio
                              Vielen Dank für deine Hilfe!
                              Ich generiere eine html-Tabelle in einem Javascript, schreibe dieses in einen DP. Per Binding lasse ich mir dieses im html-Widget anzeigen. Funktioniert das Umschalten dann auch?

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #15

                              @ice987

                              mache das mit allen meinen tabellenscripts - das funktioniert

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              1 Antwort Letzte Antwort
                              0
                              • OliverIOO OliverIO

                                @ice987

                                Um die Vorgehensweise nochmal zu verdeutlichen.

                                Ihr schreibt eine javascriptfunktion mit der oben genannten Logik in Script Tag und packt die in ein html Widget.

                                In einem binding, welches auf den datenpunkt reagiert, ruft ihr dann diese Funktion auf. Das binding muss im selben html Widget stehen

                                ice987I Offline
                                ice987I Offline
                                ice987
                                schrieb am zuletzt editiert von
                                #16

                                @oliverio sagte in eigene CSS Klasse:

                                @ice987

                                Um die Vorgehensweise nochmal zu verdeutlichen.

                                Ihr schreibt eine javascriptfunktion mit der oben genannten Logik in Script Tag und packt die in ein html Widget.

                                In einem binding, welches auf den datenpunkt reagiert, ruft ihr dann diese Funktion auf. Das binding muss im selben html Widget stehen

                                dieses Vorgehen funktioniert! Wunderbar, vielen Dank! :+1:

                                husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                                1 Antwort Letzte Antwort
                                0
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                808

                                Online

                                32.6k

                                Benutzer

                                82.2k

                                Themen

                                1.3m

                                Beiträge
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Anmelden

                                • Du hast noch kein Konto? Registrieren

                                • Anmelden oder registrieren, um zu suchen
                                • Erster Beitrag
                                  Letzter Beitrag
                                0
                                • Home
                                • Aktuell
                                • Tags
                                • Ungelesen 0
                                • Kategorien
                                • Unreplied
                                • Beliebt
                                • GitHub
                                • Docu
                                • Hilfe