Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. HTML
  3. Reference
  4. Elements
  5. <picture>

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

<picture>: Das Picture-Element

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since März 2016.

Das<picture>-ElementHTML enthält null oder mehr<source>-Elemente und ein<img>-Element, um alternative Versionen eines Bildes für unterschiedliche Anzeige-/Geräteszenarien anzubieten.

Der Browser wird jedes untergeordnete<source>-Element betrachten und die beste Übereinstimmung unter ihnen auswählen. Wenn keine Übereinstimmungen gefunden werden – oder der Browser das<picture>-Element nicht unterstützt –, wird die URL dessrc-Attributs des<img>-Elements ausgewählt. Das ausgewählte Bild wird dann in dem Bereich präsentiert, der vom<img>-Element eingenommen wird.

Probieren Sie es aus

<!--Change the browser window width to see the image change.--><picture>  <source    srcset="/shared-assets/images/examples/surfer.jpg"    media="(orientation: portrait)" />  <img src="/shared-assets/images/examples/painted-hand.jpg" alt="" /></picture>

Um zu entscheiden, welche URL geladen werden soll, prüft derUser-Agent diesrcset-,media- undtype-Attribute jedes<source>-Elements, um ein kompatibles Bild auszuwählen, das am besten zum aktuellen Layout und den Fähigkeiten des Anzeigegeräts passt.

Das<img>-Element erfüllt zwei Zwecke:

  1. Es beschreibt die Größe und andere Attribute des Bildes und dessen Präsentation.
  2. Es bietet eine Fallback-Option, falls keines der angebotenen<source>-Elemente ein verwendbares Bild bereitstellen kann.

Häufige Anwendungsfälle für<picture>:

  • Art-Direction. Zuschneiden oder Anpassen von Bildern für unterschiedlichemedia-Bedingungen (zum Beispiel das Laden einer einfacheren Version eines Bildes mit zu vielen Details auf kleineren Displays).

  • Anbieten alternativer Bildformate für Fälle, in denen bestimmte Formate nicht unterstützt werden.

    Hinweis:Beispielsweise haben neuere Formate wieAVIF oderWEBP viele Vorteile, könnten jedoch vom Browser nicht unterstützt werden. Eine Liste der unterstützten Bildformate finden Sie im:Leitfaden für Bilddateitypen und -formate.

  • Bandbreite sparen und Seitenladezeiten beschleunigen durch das Laden des geeignetsten Bildes für das Anzeigegerät des Betrachters.

Wenn Sie hochauflösende Versionen eines Bildes für hochauflösende (Retina) Displays bereitstellen, verwenden Siesrcset im<img>-Element. Dies ermöglicht es Browsern, in datensparenden Modi niedrigauflösende Versionen zu wählen, und Sie müssen keine explizitenmedia-Bedingungen schreiben.

Attribute

Dieses Element enthält nurglobale Attribute.

Verwendungshinweise

Sie können die Eigenschaftobject-position verwenden, um die Positionierung des Bildes innerhalb des Rahmens des Elements anzupassen, und die Eigenschaftobject-fit, um zu steuern, wie das Bild innerhalb des Rahmens skaliert wird.

Hinweis:Verwenden Sie diese Eigenschaften am untergeordneten<img>-Element,nicht am<picture>-Element.

Beispiele

Diese Beispiele zeigen, wie verschiedene Attribute des<source>-Elements die Auswahl des Bildes innerhalb von<picture> verändern.

Das media-Attribut

Dasmedia-Attribut spezifiziert eine Medienbedingung (ähnlich einem Media-Query), die der User-Agent für jedes<source>-Element auswerten wird.

Wenn die Medienbedingung des<source> auffalse ausgewertet wird, überspringt der Browser dieses Element und bewertet das nächste Element innerhalb von<picture>.

html
<picture>  <source srcset="mdn-logo-wide.png" media="(width >= 600px)" />  <img src="mdn-logo-narrow.png" alt="MDN" /></picture>

Sie können Bildressourcen für helle und dunkle Designs mit derprefers-color-scheme-Medienfunktion austauschen:

html
<picture>  <source srcset="logo-dark.png" media="(prefers-color-scheme: dark)" />  <source srcset="logo-light.png" media="(prefers-color-scheme: light)" />  <img src="logo-light.png" alt="Product logo" /></picture>

Das srcset-Attribut

Dassrcset-Attribut wird verwendet, um eine Liste möglicher Bilder basierend auf Größe oder Pixeldichte des Displays anzubieten.

Es besteht aus einer durch Kommas getrennten Liste von Bildbeschreibungen. Jede Bildbeschreibung besteht aus einer Bild-URL undentweder:

  • einemBreitenbeschreiber, gefolgt von einemw (wie300w);ODER
  • einemPixeldichtebeschreiber, gefolgt von einemx (wie2x), um ein hochauflösendes Bild für hochauflösende Bildschirme bereitzustellen.

Beachten Sie, dass:

  • Breiten- und Pixeldichtebeschreiber nicht zusammen verwendet werden sollten
  • ein fehlender Pixeldichtebeschreiber 1x impliziert
  • doppelte Beschreibungswerte nicht erlaubt sind (2x & 2x, 100w & 100w)

Das folgende Beispiel veranschaulicht die Verwendung dessrcset-Attributs mit dem<source>-Element, um ein hochauflösendes und ein standardauflösendes Bild anzugeben:

html
<picture>  <source srcset="logo.png, logo-1.5x.png 1.5x" />  <img src="logo.png" alt="MDN Web Docs logo" height="320" width="320" /></picture>

Dassrcset-Attribut kann auch ohne das<picture>-Element am<img>-Element verwendet werden. Das folgende Beispiel zeigt, wie dassrcset-Attribut verwendet wird, um standard- und hochauflösende Bilder anzugeben:

html
<img  srcset="logo.png, logo-2x.png 2x"  src="logo.png"  height="320"  width="320"  alt="MDN Web Docs logo" />

Das sizes-Attribut

Dassizes-Attribut des<source>-Elements ermöglicht es Ihnen, ein Set von Paaren aus Medienbedingungen und Längen anzugeben und die Anzeigengröße des Bildes für jede Bedingung zu bestimmen. Dies hilft dem Browser, das geeignetste Bild aus demsrcset-Attribut auszuwählen, das Bilder mit ihrenintrinsischen Breiten auflistet.

Der Browser bewertet die Medienbedingungen im sizes-Attribut, bevor er irgendwelche Bilder lädt. Weitere Informationen finden Sie im sizes-Attribut der<img> und<source>-Elemente.

Beispielsweise:

html
<picture>  <source    srcset="small.jpg 480w, medium.jpg 800w, large.jpg 1200w"    sizes="(max-width: 600px) 400px, 800px"    type="image/jpeg" />  <img src="fallback.jpg" alt="Example image" /></picture>

In diesem Beispiel:

  • Wenn das Ansichtsfenster 600px breit oder schmaler ist, beträgt die Slot-Größe 400px; andernfalls 800px.
  • Der Browser multipliziert die Slot-Größe mit dem Gerätepixelverhältnis, um die ideale Bildbreite zu ermitteln und wählt dann das am nächsten verfügbare Bild aussrcset.

Ohne sizes verwendet der Browser die Standardgröße des Bildes, wie durch seine Abmessungen in Pixeln angegeben. Dies ist möglicherweise nicht die beste Option für alle Geräte, besonders wenn das Bild auf verschiedenen Bildschirmgrößen oder in unterschiedlichen Kontexten angezeigt wird.

Bitte beachten Sie, dass sizes nur dann Auswirkungen hat, wenn mit srcset Breitenbeschreibungswerte anstelle von Pixeldichtewerten bereitgestellt werden (200w anstelle von 2x zum Beispiel).Weitere Informationen zur Verwendung vonsrcset finden Sie in derResponsive Images-Dokumentation.

Das type-Attribut

Dastype-Attribut spezifiziert einenMIME-Typ für die Ressourcen-URL(s) imsrcset-Attribut des<source>-Elements. Wenn der User-Agent den angegebenen Typ nicht unterstützt, wird das<source>-Element übersprungen.

html
<picture>  <source srcset="photo.avif" type="image/avif" />  <source srcset="photo.webp" type="image/webp" />  <img src="photo.jpg" alt="photo" /></picture>

Technische Zusammenfassung

InhaltskategorienFlussinhalt, Phrasing-Inhalt, eingebetteter Inhalt
Zulässiger Inhalt Null oder mehr<source>-Elemente, gefolgt von einem<img>-Element, optional vermischt mit skriptunterstützenden Elementen.
Tag-AuslassungKeine, sowohl der Anfangs- als auch der End-Tag sind obligatorisch.
Zulässige ElternJedes Element, das eingebetteten Inhalt erlaubt.
Implizite ARIA-RolleKeine entsprechende Rolle
Zulässige ARIA-RollenKeinerole erlaubt
DOM-Schnittstelle[`HTMLPictureElement`](/de/docs/Web/API/HTMLPictureElement)

Spezifikationen

Specification
HTML
# the-picture-element

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2026 Movatter.jp