Tarif-Tabelle: hervorgehobene Zeile war keine Tabellenzeile mehr

Die aktuell gebuchte Tarifzeile trug class="hint-box success" auf dem <tr>.
.hint-box macht aus dem Element einen Flex-Container - auf einer Tabellenzeile
loest das die Spaltenaufteilung auf. Mit dem Grundstil aus main.css lagen die
Zellen noch nebeneinander und das fiel kaum auf; durch das in d18c55e
ergaenzte flex-direction: column standen sie dann untereinander.

Behoben an der Ursache statt am CSS: Die Zeile bekommt eine eigene Klasse
.tarif-aktuell und bleibt eine normale Tabellenzeile, die Hervorhebung laeuft
ueber Hintergrund und einen Akzentstreifen an der ersten Zelle. Zusaetzlich
ist die flex-direction-Regel jetzt auf div.hint-box eingegrenzt, damit die
Klasse auf einem Tabellenelement nicht erneut die Spalten zerstoeren kann.

Geprueft: http-smoke 34/0, role-matrix 55/0, settings-flow 15/0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-22 17:48:17 +02:00
co-authored by Claude Opus 4.8
parent 143d7efc97
commit c6a03c1a38
2 changed files with 22 additions and 3 deletions
+21 -2
View File
@@ -121,7 +121,26 @@ input[type="radio"] + label {
}
/* Mehrere Absaetze/Listen in einer Box sollen untereinander stehen statt
nebeneinander (Flex-Grundstil). */
.hint-box {
nebeneinander (Flex-Grundstil).
Bewusst auf div eingegrenzt: .hint-box macht aus einem Element einen
Flex-Container. Auf einer Tabellenzeile zerstoert das die Spalten - fuer
hervorgehobene Zeilen gibt es .tarif-aktuell weiter unten. */
div.hint-box {
flex-direction: column;
}
/* ---------------------------------------------------------------------------
* Hervorgehobene Tabellenzeile (aktuell gebuchter Tarif)
*
* Muss eine normale Tabellenzeile bleiben, damit die Zellen unter ihren
* Spaltenueberschriften stehen.
* ------------------------------------------------------------------------ */
tr.tarif-aktuell > td {
background: #e8fbe8;
color: #1b5e20;
font-weight: 600;
}
tr.tarif-aktuell > td:first-child {
box-shadow: inset 5px 0 0 0 #4caf50;
}
+1 -1
View File
@@ -249,7 +249,7 @@ include 'nav.php';
$selectable = billing_plan_selectable_for($pdo, (int)$user['tenant_id'], $planCode);
$isSelfService = $plan['stripe_lookup_key'] !== null || $planCode === 'free';
?>
<tr<?php echo $isCurrent ? ' class="hint-box success"' : ''; ?>>
<tr<?php echo $isCurrent ? ' class="tarif-aktuell"' : ''; ?>>
<td><?php echo saas_html($plan['label']); ?></td>
<td><?php echo $plan['max_participants'] !== null ? (int)$plan['max_participants'] : 'unbegrenzt'; ?></td>
<td><?php echo $plan['price_cents'] > 0 ? saas_html(saas_format_money_cents($plan['price_cents'])) . ' €' : 'kostenlos'; ?></td>