Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. html - Tabelle - scriptHilfe benötigt CSS?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    html - Tabelle - scriptHilfe benötigt CSS?

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Jason 0 last edited by

      Hallo zusammen,

      ich versuche Datenpunktswerte in einer Tabelle darzustellen. Dazu noch ein Icon, mit einer Abhängigkeit vom Wert.
      Anbei mein html code. Ich hab mir das so zusammengesucht. Ich habe das Gefühl, dass Sachen wie die Textausrichtung innerhalb der Spalte nicht korrekt übernommen werden. Prinzipiell funktioniert das aber so.
      Ich will eigentlich: Spaltenbreite, Textausrichtung, Texthöhe (Iconhöhe), Tabellenumrandung usw. ohne viel Aufwand anpassen können.

      b22a983e-3d81-40a4-92ce-268dee76d9a2-grafik.png

      Würde man die Optik eher über CSS Code machen? - wovon ich 0-Ahnung habe. Ich dachte, wenn ich alles in einem html Code unterbringe, bleibt es für mich beherrschbar.

      Wie würden Profis an die Aufgabe herangehen? Worin muss ich mich einlesen?

      Danke für eure Hilfe!

      <style>
         /* Grundlegende Tabellenstile */
         .custom-table {
            width: 100%; /* Tabellenbreite */
            border-collapse: collapse; /* Entfernt doppelte Ränder */
            border: 1px solid black; /* Tabellenumrandung ein-/ausschalten */
         }
         
         .custom-table td {
            border: 1px solid black; /* Zellenrand ein-/ausschalten */
            padding: 8px; /* Abstand innerhalb der Zellen */
            font-size: 36px; /* Einheitliche Schriftgröße für alle Zellen */
         }
      
         /* Spaltenweise Textausrichtung */
         .custom-table td:nth-child(1) { text-align: center; } /* Erste Spalte */
         .custom-table td:nth-child(2) { text-align: right; } /* Zweite Spalte */
         .custom-table td:nth-child(3) { text-align: right; }  /* Dritte Spalte */
         .custom-table td:nth-child(4) { text-align: left; }   /* Vierte Spalte */
      </style>
      
      <table class="custom-table">
         <colgroup>
            <col style="width: 200px;"> <!-- Spaltenbreite für die erste Spalte -->
            <col style="width: 50px;">  <!-- Spaltenbreite für die zweite Spalte -->
            <col style="width: 50px;">  <!-- Spaltenbreite für die dritte Spalte -->
            <col style="width: 100px;"> <!-- Spaltenbreite für die vierte Spalte -->
         </colgroup>
         <!-- Tabellenkörper -->
         <tbody>
            <tr>
               <td>Batterie:</td>
               <td style="color: {b:alias.0.Auto.LexusUX300e.batteryLevel.batteryLevel;getBatteryColor(b)};">
                  <i class="material-icons" style="font-size: 36px;">battery_full</i>
               </td>
               <td>{alias.0.Auto.LexusUX300e.batteryLevel.batteryLevel}</td>
               <td>%</td>
            </tr>
      		<tr>
               <td>Reichweite:</td>
               <td style="color: {b:alias.0.Auto.LexusUX300e.distance.value};">
             <i class="material-icons" style="font-size: 36px; color: #000000;">ev_station</i>
               </td>
               <td>{alias.0.Auto.LexusUX300e.distance.value}</td>
               <td>km</td>
      	  <tr>
              <!-- Wiederhole für weitere Zeilen -->
         </tbody>
      </table>
      
      <script>
         /* Funktion zur Bestimmung der Farbe des Batterieicons basierend auf dem Batterieladestand */
         function getBatteryColor(batteryLevel) {
            if (batteryLevel >= 0 && batteryLevel <= 20) {
               return "red"; // Rot für niedrigen Ladestand
            }
            else if (batteryLevel > 20 && batteryLevel <= 76) {
               return "orange"; // Orange für mittleren Ladestand
            }
            else if (batteryLevel > 76 && batteryLevel <= 100) {
               return "green"; // Grün für hohen Ladestand
            }
            else {
               return "black"; // Schwarz für ungültige Werte
            }
         }
      </script>
      
      
      Codierknecht OliverIO 2 Replies Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Jason 0 last edited by

        @jason-0 sagte in html - Tabelle - scriptHilfe benötigt CSS?:

        Würde man die Optik eher über CSS Code machen? - wovon ich 0-Ahnung habe. Ich dachte, wenn ich alles in einem html Code unterbringe, bleibt es für mich beherrschbar.

        Dafür ist CSS da.

        HTML ist eine Auszeichnungssprache. Die erzeugt die Struktur.
        Für das Format ist CSS zuständig.

        1 Reply Last reply Reply Quote 0
        • OliverIO
          OliverIO @Jason 0 last edited by OliverIO

          @jason-0

          Du kannst die formatierungsanweisungen auch direkt im html angeben.
          Dafür gibt es das style Attribut an jedem Tag.
          Allerdings musst du das immer wieder neu wiederholen. Dadurch blähst du das html auf, es wird unlesbar und schwieriger zu pflegen.
          Daher kannst du die css Anweisungen in ein extra Stylesheet auslagern.
          Daher, wenn Formatierung kommst du nicht drum rum dich mit css auseinander zu setzten

          Zum lernen und nachschlagen kannst du das hier verwenden
          https://wiki.selfhtml.org/wiki/CSS
          Oder das

          https://www.w3schools.com/css/

          Wenn du die Grundlagen drauf hast, kannst du bei Google einfach nach deinem Problem suchen. Bspw stackoverflow ist eine super Quelle für diese Art der Fragen.

          J 1 Reply Last reply Reply Quote 1
          • J
            Jason 0 @OliverIO last edited by

            @oliverio

            Ein großes Dankeschön für diesen tollen Link. Ich lese jetzt 2h und mir schwant langsam, auf welchem Holzweg ich mit meinen "instyles" und meinem Wunsch nach einer "Tabelle" bin.

            Große Klasse!

            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            645
            Online

            31.8k
            Users

            80.0k
            Topics

            1.3m
            Posts

            3
            4
            200
            Loading More Posts
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes
            Reply
            • Reply as topic
            Log in to reply
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
            The ioBroker Community 2014-2023
            logo