Video im Header erstellen

Ein einfaches Beispiel, wie du ein Video als Hintergrund im Header deiner Webseite einsetzt und für Mobilgeräte ein statisches Bild anzeigst.

HTML & PHP: Header mit Video und Bild für Mobile

Hier siehst du den PHP-Code, der basierend auf dem Gerät den Video-Header oder einen Bild-Hintergrund ausgibt.


<?php
function isMobile() {
    return preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\\.browser|up\\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"]);
}
?>

<?php if (isMobile()) { ?>
<section class="hero" id="headoben" style="background:url('/background.jpg'); background-position:center; background-size:cover;">
    <div class="header-text">
        <h1>Slogan</h1>
        <p>Text</p>
    </div>
</section>
<?php } else { ?>
<section class="header">
    <video playsinline autoplay muted loop>
        <source src="/video.mp4" type="video/mp4">
        <track src="/video.vtt" kind="captions" srclang="de" label="video_header">
    </video>
    <div class="header-text">
        <h1>Slogan</h1>
        <p>Text</p>
    </div>
</section>
<?php } ?>

CSS für Video-Hintergrund und Text-Overlay

Das passende CSS sorgt dafür, dass das Video den kompletten Header ausfüllt und der Text darüber gut sichtbar bleibt.


section.header, section.hero {
  position: relative;
  width: 100%;
  height: 60vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
}

section.header video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  z-index: 1;
  object-fit: cover;
}

.header-text {
  position: relative;
  z-index: 2;
  padding: 0 20px;
  max-width: 800px;
  text-shadow: 0 0 10px rgba(0,0,0,0.7);
}

@media (max-width: 768px) {
  section.header {
    display: none; /* Video im Header auf Mobil verbergen */
  }
  section.hero {
    height: 50vh; /* evtl Höhe für Mobil anpassen */
  }
}

Schritt-für-Schritt-Erklärung

  • isMobile(): PHP-Funktion prüft anhand des User Agents, ob es ein mobiles Gerät ist.
  • Header-Ausgabe: Mobile Geräte bekommen einen section.hero mit Hintergrundbild, Desktop-Geräte einen section.header mit Video-Tag.
  • Video-Tag: Mit autoplay, muted, loop und playsinline für beste Kompatibilität und Optik.
  • CSS Styling: Video wird absolut positioniert und mit object-fit: cover das gesamte Headerfeld ausfüllt.
  • Text-Overlay: Text steht über dem Video/Bild mit Schatten für gute Lesbarkeit.

Fazit

Mit dieser einfachen Lösung kannst du deinen Header visuell lebendiger machen, unterstützt mobile Nutzer sinnvoll mit einem Bild und achtest darauf, dass der Text immer gut sichtbar bleibt.

Demo

Malediven

Abendessen

FAQ: Video im Header

Was ist ein Video‑Header und warum sollte ich ihn einsetzen?

Ein Video‑Header ist ein Video, das im oberen Bereich (Header) einer Webseite als Hintergrund abgespielt wird. Er erzeugt hohe Aufmerksamkeit, unterstützt Storytelling und kann die Markenwirkung stärken (z. B. Produkt in Aktion, Atmosphäre). Nutzen sollten Sie ihn, wenn das Video Mehrwert liefert und nicht nur Deko ist — bei rein dekorativen Videos sind Performance‑ und Zugänglichkeitsaspekte besonders wichtig.

Welche Videoformate und Codec‑Empfehlungen gibt es?

Für maximale Kompatibilität empfiehlt sich MP4 (H.264) als primäres Format. Ergänzend sind WebM (VP9/AV1) für moderne Browser und ein möglichst kurze, leicht komprimierte Variante sinnvoll. Stelle mehrere Varianten bereit und nutzeim video‑Tag, damit der Browser das beste Format wählt. Achte auf angemessene Bitrate und Auflösung (z. B. 720p für Header reicht oft).

Wie verhindere ich lange Ladezeiten und negative Auswirkungen auf Performance?

Komprimiere Videos, nutze moderne Codecs, erstelle Shortcuts (10–30 Sekunden) und setze geeignete Bitrates. Verwende ein Poster‑Bild (poster‑Attribut) als Platzhalter, verzögere das Laden mittels lazy‑loading oder setze preload=“none“ für nicht‑kritische Videos. Nutze ein CDN, aktiviere Caching/GZIP, liefere kleinere mobile Varianten und teste Core Web Vitals (LCP/CLS/INP) mit Lighthouse.

Wie verhalte ich mich auf Mobilgeräten — soll das Video abgespielt werden?

Viele Mobilgeräte und Netzbetreiber blockieren Autoplay oder deaktiveren Ton; außerdem ist Datenvolumen zu beachten. Besser ist eine device‑abhängige Lösung: für Mobilgeräte ein statisches Hintergrundbild (Poster) anzeigen oder eine stark reduzierte Version laden. Per PHP‑UserAgent‑Check oder JavaScript‑Feature‑Detection das Verhalten steuern. Fallbacks sind wichtig.

Muss das Video stummgeschaltet sein? Autoplay funktioniert nur mit Ton oder ohne?

Browser erlauben Autoplay nur, wenn das Video stummgeschaltet ist (muted) oder Nutzerinteraktion stattgefunden hat. Für Header‑Videos gilt daher: autoplay + muted + playsinline verwenden. Tonabhängige Inhalte sollten via Klick aktiviert werden, niemals automatisch mit Ton starten.

Wie sorge ich für Barrierefreiheit (Accessibility) bei Video‑Headern?

Wenn das Video rein dekorativ ist, markiere es als aria-hidden=“true“ oder role=“presentation“ und biete alternative Inhalte (z. B. Textüberlagerung). Wenn das Video informationstragend ist, biete Untertitel/Transkripte an () und stelle eine Möglichkeit zur Deaktivierung bereit. Achte außerdem auf Kontrast für überlagerten Text und teste Tastaturnavigation sowie Screenreader‑Verhalten.

Wie integriere ich Untertitel/Captioning?

Untertitel kannst du viaeinbinden. Verwende WebVTT‑Dateien für Text und Timing. Für Barrierefreiheit sollten wichtige Aussagen auch als HTML‑Text oder Transkript verfügbar sein. Prüfe, ob die Captions korrekt synchronisiert und in Mobil‑Fallbacks zugänglich sind.

Welche rechtlichen Aspekte muss ich bei Einsatz von Videos beachten?

Lizenz- und Urheberrechte sind entscheidend: Nur eigene oder korrekt lizenzierte Inhalte verwenden. Bei Personen im Video benötigst du ggf. Einwilligungen (Model Releases). Wenn das Video Tracking oder Drittplattformen (z. B. YouTube) einbindet, prüfe Datenschutz/DSGVO (Einwilligung, Cookie‑Banner, Datenschutz‑Hinweis).

Wie binde ich ein Video‑Header technisch sauber in WordPress ein?

Lege Video/Poster ins Upload‑Verzeichnis, lade Assets per wp_enqueue_script/style falls nötig, und portioniere den Markup in header.php oder als Template‑Part. Verwende get_template_part() und conditional tags (is_front_page()) für gezielte Platzierung. Für Performance: hoste Videos idealerweise im eigenen CDN oder externen Hosting, aber beachte DSGVO bei Drittanbietern.

Welche CSS‑Techniken sorgen für gute Darstellung und Responsive Verhalten?

Nutze absolutes Positioning für

Wie teste und debugge ich Probleme mit dem Video‑Header?

Teste in allen gängigen Browsern (Chrome, Safari, Firefox) und auf echten Geräten (iOS/Android). Prüfe die Console auf Autoplay‑ oder CORS‑Fehler (Cross‑Origin), kontrolliere Netzwerkanforderungen (DevTools Network) und verifiziere Medien‑Header (Content‑Type, Accept‑Ranges). Teste außerdem ohne Cache/Incognito und auf langsamen Verbindungen (Network throttling).

Sollte ich das Video zugunsten von SEO verstecken oder hat es Auswirkungen auf Suchmaschinen?

Suchmaschinen indexieren in der Regel keine Video‑Inhalte visuell; daher sollte wichtige textliche Information separat als HTML vorhanden sein (Slogan, H1, Beschreibung). Das Video selbst hat eher indirekte Auswirkungen (Verweildauer, Nutzererlebnis). Stelle sicher, dass strukturelle Inhalte (Titel, Text) zugänglich sind und lade das Video nicht so, dass Core Web Vitals negativ beeinflusst werden.

Kontakt

Webdesignstudio WedDesign

Eduard Wischnewski

Am Justusberg 7
41849 Wassenberg

    Ja, ich möchte den Newsletter erhalten