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
    927

  • 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.
  • 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

                              892

                              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