Das Plugin bringt fast keine Gestaltung mit. Es erzeugt Markup mit Klassen, alles Weitere steht im CSS der Site.
Was erzeugt wird
<div class="layout-box layout-box-note">
<h3 class="layout-box-title">Über dieses Handbuch</h3>
<div class="layout-box-content">…Schnipsel…</div>
</div>Mit collapsible:
<details class="layout-box layout-box-note" open>
<summary class="layout-box-title">Über dieses Handbuch</summary>
<div class="layout-box-content">…Schnipsel…</div>
</details>Die Überschrift fehlt ohne title, der Rest bleibt gleich. layout-box tragen alle Boxen, die
zweite Klasse kommt aus className.
Ansprechen
.layout-box-note {
padding: 1rem;
border: 1px solid var(--lightgray);
border-radius: 6px;
}
.layout-box-note p:first-child { margin-block-start: 0; }Immer über
classNameselektieren, nie über die Stelle
.left .layout-boxfunktioniert, bis jemand die Box in die rechte Spalte schiebt. Eine eigene Klasse je Instanz überlebt das Umsortieren.
Was das Plugin doch mitbringt
Zwei Dinge, beide notwendig:
- Bilder werden auf die Breite der Box begrenzt. Ohne das sprengte ein zu großes Logo die Spalte.
img-lightundimg-dark— ein Bild je Farbschema. Das Plugin setzt für beide dasdisplay.
Keine eigene
display-Regel fürimg-lightundimg-darkDie Regeln des Plugins stehen in einer CSS-Ebene (
@layer), das CSS der Site nicht. Ungelayertes CSS schlägt gelayertes — unabhängig von der Spezifität. Eine eigenedisplay-Regel gewinnt also und zeigt beide Bilder gleichzeitig. Alles andere an diesen Bildern darf man setzen, nurdisplaynicht.
Ein fehlendes Schnipsel sieht man
Im Modus --serve wird aus einer fehlenden Datei eine gestrichelte Box mit der Klasse
layout-box-missing, der den erwarteten Pfad nennt. Im normalen Bau erscheint nichts — dort ist
eine halbfertige Seite schlimmer als eine fehlende Box.