Ein Details-Element erstellen, das sich öffnet, aber niemals schließt

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Die Elemente <details> und <summary> in HTML eignen sich gut für das Umschalten von Inhaltsblöcken. Standardmäßig sehen Sie das <summary>-Element mit einem Umschalt-Dreieck (▶︎) daneben. Klicken Sie darauf, um den Rest des Textes innerhalb des <details>-Elements zu erweitern.

Aber nehmen wir an, Sie möchten, dass es sich mit einem Klick öffnet und das war's dann. Interaktivität beendet. Ich habe dies in einem dieser "Mehr lesen"-Artikeldesigns gesehen, bei denen man auf diesen "Mehr lesen"-Button klickt und der Artikel sich erweitert, aber es gibt kein Zurück.

Ich möchte vorausschicken, dass ich nicht sicher bin, ob dies generell eine gute Idee ist. Die Entfernung von Steuerelementen fühlt sich einfach nicht gut an, ebenso wenig wie das Hineinstopfen zu viel wichtiger Inhalte in ein <details>-Element. Aber hey, das Web ist groß und man weiß nie, was man brauchen könnte. Die Tatsache, dass dies mit ein paar Zeilen HTML/CSS gemacht werden kann, ist überzeugend und könnte den Bedarf an aufwendigeren Lösungen reduzieren.

Der Haupttrick hier ist, die Zusammenfassung zu verstecken, wenn das Details-Element geöffnet ist.

details[open] summary {
  display: none;
}

Das ist im Grunde alles.