Grüß euch,
ich möchte gerne bei bestimmten Status eines Temperatursensor der in einer BubbleCard eingebunden ist diese färben.
Das heißt die BubbleCard soll sich färben (Hintergrund, Icon usw)
Folgendermaßen tue ich das am Beispiel des Bubble Background:
ha-card {
/* SLANG - Farbe des Buttons */
--bubble-main-background-color: ${state > '30' ? 'red' : state <= '25' ? 'green' : 'yellow'} !important;
}
Das habe ich bislang mit innenraumtemperaturen gemacht. Das funktioniert (dachte ich) gut.
Jetzt habe ich aber einen Außentemperatursensor ebenfalls eingebunden und dieser zeigt aktuell 5,7°C.
Der Button ist rot.
Entweder ich verstehe den Syntax nicht richtig, mache daher etwas falsch, oder es handelt sich um einen Bug in der BubbleCard.
Ich übersetze mal den Syntax wie ich ihn verstehe:
${state > '30' ? 'red' : state <= '25' ? 'green' : 'yellow'}
Entspricht:
Ist der Status Größer 30 ? dann Farbe Rot : ist der Status kleiner oder Gleich 25? dann Farbe Grün : Alles andere soll Gelb sein.
Das heißt Temperaturen zwischen 26 und 30 °C sind gelb.
Leider funktioniert das so nicht. ich habe mal mit den Entwicklertools gespielt und die Temperaturen von Hand gesetzt. Alle Temperaturen unter 10 °C werden rot markiert. Alle Temperaturen über 80°C werden rot markiert.
Ich verstehs nicht…
Das ist der vollständige Code der Bubble:
type: custom:bubble-card
card_type: button
entity: sensor.gw1100a_outdoor_temperature
scrolling_effect: false
show_icon: true
show_state: false
name: Außentemperatur
tap_action:
action: more-info
double_tap_action:
action: none
hold_action:
action: none
sub_button:
- entity: sensor.gw1100a_outdoor_temperature
show_attribute: false
show_state: true
show_icon: true
state_background: false
tap_action:
action: none
- entity: sensor.gw1100a_humidity
state_background: false
show_background: true
show_state: true
button_type: state
styles: |-
ha-card {
/* SLANG - Farbe des Buttons */
--bubble-main-background-color: ${state > '30' ? '#472422' : state <= '25' ? '#263928' : '#a7771b'} !important;
/* SLANG - Farbe des Icon Kreises */
--bubble-secondary-background-color: ${state > '30' ? '#f3453c' : state <= '25' ? '#4eaf58' : '#ffbb00'} !important;
}
.bubble-sub-button {
text-shadow: none;
min-width: 90px;
background-color: ${state > '30' ? '#f3453c' : state <= '25' ? '#4eaf58' : '#ffbb00'} !important;
border: none;
}
.bubble-sub-button-1 {
color: ${state > '30' ? '#e1e1e1' : state <= '25' ? '#263928' : '#352906'} !important;
background-color: ${state > '30' ? '#f3453c' : state <= '25' ? '#4eaf58' : '#ffbb00'} !important;
border: 1px solid #e1e1e1;
}
.bubble-sub-button-2 {
color: #e1e1e1;
background-color: #3b65a8 !important;
border: 1px solid #e1e1e1;
}
.bubble-icon {
color: ${state > '30' ? '#e1e1e1' : state <= '25' ? '#263928' : '#352906'} !important;
opacity: 1 !important;
}
card_layout: normal
icon: mdi:home-thermometer
So sieht das derzeit aus:
