0Pricing
HTML Academy · Lektion

Das hidden-Attribut

Schalten Sie die Sichtbarkeit von Elementen mit dem booleschen Attribut hidden um.

Das hidden-Attribut ist eine kostenlose HTML Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des HTML Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist hidden?

Das Attribut hidden macht ein Element unsichtbar und entfernt es aus dem Barrierefreiheitsbaum:

<p hidden>This paragraph is hidden.</p>
<!-- Equivalent to: display: none in CSS -->
<!-- The element is in the DOM but not rendered -->
<!-- Screen readers do not announce hidden elements -->

hidden ist ein boolesches Attribut

Boolesche Attribute sind entweder vorhanden (true) oder nicht vorhanden (false) — ein Wert ist nicht erforderlich:

<!-- All of these are equivalent: -->
<div hidden>Content</div>
<div hidden="">Content</div>
<div hidden="hidden">Content</div>

<!-- Remove with JavaScript: -->
element.removeAttribute('hidden');

<!-- Or set: -->
element.setAttribute('hidden', '');

hidden vs display:none vs visibility:hidden

Drei Möglichkeiten, Elemente auszublenden:

/* hidden attribute = display:none */
/* Element is removed from flow, invisible to AT */

/* visibility: hidden */
/* Element occupies space but is invisible */
/* Still read by some screen readers */

/* opacity: 0 */
/* Element occupies space, invisible, still interactive */
/* Still read by screen readers */

/* Hidden attribute is the simplest for fully hiding content */

Sichtbarkeit mit JavaScript umschalten

Steuern Sie die Sichtbarkeit, indem Sie das Attribut hidden hinzufügen oder entfernen:

const modal = document.getElementById('modal');

// Show:
modal.removeAttribute('hidden');
// or:
modal.hidden = false;

// Hide:
modal.setAttribute('hidden', '');
// or:
modal.hidden = true;

// Toggle:
modal.toggleAttribute('hidden');

CSS kann hidden überschreiben

CSS display kann das Attribut hidden überschreiben — seien Sie vorsichtig:

/* This makes hidden elements visible again: */
[hidden] {
  display: block !important;
}

/* Do not do this unless you have a very specific reason */

/* The hidden attribute should be trusted as the source of truth for visibility */

hidden vs aria-hidden

Zwei verschiedene Arten des Ausblendens:

  • hidden — visuell ausgeblendet UND aus dem Barrierefreiheitsbaum entfernt
  • aria-hidden="true" — nur aus dem Barrierefreiheitsbaum ausgeblendet, wird weiterhin visuell dargestellt
<!-- hidden: nothing sees it -->
<div hidden>Completely hidden</div>

<!-- aria-hidden: visual users see it, screen readers skip it -->
<span aria-hidden="true">★★★★☆</span>
<span class="sr-only">4 out of 5 stars</span>

Muster zum Ein- und Ausblenden

Klassisches Muster zum Ein- und Ausblenden mit hidden:

<button
  aria-expanded="false"
  aria-controls="menu"
  id="menu-btn"
>Menu</button>

<ul id="menu" hidden>
  <li><a href="/">Home</a></li>
  <li><a href="/about">About</a></li>
</ul>

<script>
document.getElementById('menu-btn').addEventListener('click', function() {
  const menu = document.getElementById('menu');
  const expanded = this.getAttribute('aria-expanded') === 'true';
  menu.hidden = expanded;
  this.setAttribute('aria-expanded', !expanded);
});
</script>

Wert until-found (neu)

HTML 5.1+ führte hidden="until-found" für durchsuchbare, aber eingeklappte Inhalte ein:

<details>
  <summary>Read More</summary>
  <div hidden="until-found" id="more-content">
    <p>This content is collapsed but findable by Ctrl+F.</p>
  </div>
</details>
<!-- hidden="until-found" hides visually but allows browser Ctrl+F to find and reveal it -->
<!-- Only supported in Chromium-based browsers currently -->

Verhalten von Screenreadern

Das Attribut hidden blendet Inhalte für assistierende Technologien vollständig aus:

  • Screenreader überspringen ausgeblendete Elemente
  • Der Tab-Fokus gelangt nicht in ausgeblendete Elemente
  • Dies ist für Modals, Off-Canvas-Menüs und bedingte Bereiche richtig, die im ausgeblendeten Zustand nicht durchlaufen werden sollen

Häufige Anwendungsfälle

Wann Sie das Attribut hidden verwenden sollten:

  • Modal-Dialoge, bevor sie geöffnet werden
  • Inhalte von Tab-Panels (das Panel des aktiven Tabs anzeigen, die anderen ausblenden)
  • Schrittbasierte Assistenten (den aktuellen Schritt anzeigen)
  • Progressive Offenlegung (per Klick weitere Informationen anzeigen)
  • Ladezustände (den Ladeindikator durch Inhalte ersetzen)

Ausgeblendeten Zustand speichern

Verwenden Sie localStorage, um den Sichtbarkeitsstatus über das Laden der Seite hinweg zu speichern:

const panel = document.getElementById('info-panel');
const key = 'info-panel-visible';

// Restore state:
if (localStorage.getItem(key) === 'false') {
  panel.hidden = true;
}

// On toggle:
document.getElementById('toggle-btn').addEventListener('click', () => {
  panel.hidden = !panel.hidden;
  localStorage.setItem(key, !panel.hidden);
});

Schnelltest

Was ist der Unterschied zwischen dem Attribut hidden und aria-hidden?

Zusammenfassung: hidden-Attribut

Die wichtigsten Punkte zum hidden-Attribut:

  • hidden — entspricht display: none
  • Boolesch: vorhanden = ausgeblendet, nicht vorhanden = sichtbar
  • Aus dem Barrierefreiheitsbaum entfernt (anders als bei visibility: hidden)
  • Mit element.hidden = true/false umschalten
  • aria-hidden="true" blendet nur für AT aus, die visuelle Darstellung bleibt erhalten

Häufig gestellte Fragen

Ist die Lektion „Das hidden-Attribut“ kostenlos?

Ja — der vollständige Text von „Das hidden-Attribut“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des HTML Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der HTML Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Das hidden-Attribut“?

Schalten Sie die Sichtbarkeit von Elementen mit dem booleschen Attribut hidden um. Du übst HTML Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um HTML Academy zu starten?

Keine Vorkenntnisse erforderlich. HTML Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Das hidden-Attribut“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser HTML Academy-Lektion Code schreiben und ausführen?

Ja. Jede HTML Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. id, class, style und title
  2. Das hidden-Attribut
  3. tabindex und accesskey
  4. Benutzerdefinierte Datenattribute: data-*
← Zurück zu HTML Academy