Dieser Artikel beschreibt, wie Sie das "viewport" <meta>
-Tag verwenden, um die GröÃe und Form des Viewports zu kontrollieren.
Das Viewport eines Browsers ist der Bereich des Fensters, in dem Webinhalte sichtbar sind. Dieser Bereich entspricht oft nicht der GröÃe der gerenderten Seite. In einem solchen Fall stellt der Browser Scrollleisten zur Verfügung, mit denen der Benutzer durch den Inhalt navigieren und alles einsehen kann.
Einige mobile Geräte und andere schmale Bildschirme rendern Seiten in einem virtuellen Fenster oder Viewport, der in der Regel breiter als der Bildschirm ist, und verkleinern dann das gerenderte Ergebnis, sodass alles auf einmal zu sehen ist. Benutzer können dann zoomen und schwenken, um sich verschiedene Bereiche der Seite genauer anzusehen. Wenn ein mobiler Bildschirm beispielsweise eine Breite von 640px hat, könnten Seiten mit einem virtuellen Viewport von 980px gerendert und dann auf die 640px-Breite verkleinert werden.
Dies wird gemacht, weil nicht alle Seiten für Mobilgeräte optimiert sind und bei einer kleinen Viewport-Breite entweder kaputt gehen oder zumindest schlecht aussehen. Dieser virtuelle Viewport ist ein Weg, um nicht mobil-optimierte Seiten auf schmalen Bildschirmen generell besser darzustellen.
Diese Mechanik ist jedoch nicht so gut für Seiten, die mithilfe von Media Queries für schmale Bildschirme optimiert sind. Wenn der virtuelle Viewport beispielsweise 980px beträgt, werden Media Queries, die bei 640px oder 480px oder weniger wirken, nie verwendet, was die Effektivität solcher responsiven Designtechniken einschränkt. Das Viewport <meta>
-Element mildert dieses Problem des virtuellen Viewports auf schmalen Bildschirmen.
Der Viewport ist eine kommagetrennte Liste von Feature- und Wertpaaren. Eine typische mobil optimierte Seite enthält etwas wie das Folgende:
<meta name="viewport" content="width=device-width, initial-scale=1" />
Nicht alle Geräte haben die gleiche Breite; Sie sollten sicherstellen, dass Ihre Seiten in einer groÃen Variation von BildschirmgröÃen und -orientierungen gut funktionieren.
Die grundlegenden Attribute des "viewport"-<meta>
-Elements umfassen:
width
Kontrolliert die (Mindest-)GröÃe des Viewports (siehe Viewport-Breite und Bildschirmbreite). Es kann auf eine bestimmte Anzahl von Pixeln gesetzt werden, wie width=600
oder auf den speziellen Wert device-width
, was die physische GröÃe des Gerätescreens in CSS-Pixeln ist. Dieser Wert legt den Wert der vw
Einheit fest. Minimum: 1
. Maximum: 10000
. Negative Werte: ignoriert.
height
Kontrolliert die (Mindest-)GröÃe des Viewports (siehe Viewport-Breite und Bildschirmbreite). Es kann auf eine bestimmte Anzahl von Pixeln gesetzt werden, wie height=400
oder auf den speziellen Wert device-height
, was die physische GröÃe des Gerätescreens in CSS-Pixeln ist. Dieser Wert legt den Wert der vh
Einheit fest. Minimum: 1
. Maximum: 10000
. Negative Werte: ignoriert.
initial-scale
Kontrolliert die Zoomstufe, wenn die Seite zum ersten Mal geladen wird. Minimum: 0.1
. Maximum: 10
. Standard: 1
. Negative Werte: ignoriert.
minimum-scale
Kontrolliert, wie stark das Herauszoomen auf der Seite erlaubt ist. Minimum: 0.1
. Maximum: 10
. Standard: 0.1
. Negative Werte: ignoriert.
maximum-scale
Kontrolliert, wie stark das Hereinzoomen auf der Seite erlaubt ist. Jeder Wert unter 3 ist nicht zugänglich. Minimum: 0.1
. Maximum: 10
. Standard: 10
. Negative Werte: ignoriert.
user-scalable
Kontrolliert, ob Zoom-In- und Zoom-Out-Aktionen auf der Seite erlaubt sind. Gültige Werte: 0
, 1
, yes
oder no
. Standard: 1
, was dasselbe wie yes
ist. Den Wert auf 0
zu setzen, was dasselbe wie no
ist, verstöÃt gegen die Web Content Accessibility Guidelines (WCAG).
interactive-widget
Gibt an, welche Wirkung interaktive UI-Widgets, wie z.B. eine virtuelle Tastatur, auf die Viewports der Seite haben. Gültige Werte: resizes-visual
, resizes-content
oder overlays-content
. Standard: resizes-visual
.
Warnung: Die Verwendung von user-scalable=no
kann Barrierefreiheitsprobleme bei Nutzern mit Sehbehinderungen wie z.B. schwacher Sehkraft verursachen. WCAG erfordert ein Minimum von 2à Skalierung; jedoch ist es die beste Praxis, einen 5à Zoom zu ermöglichen.
Bildschirmauflösungen sind auf eine GröÃe gestiegen, bei der einzelne Pixel mit dem bloÃen Auge nicht mehr unterscheidbar sind. Beispielsweise haben Smartphones oft kleine Displays mit Auflösungen von über 1920â1080 Pixeln (â400dpi). Deshalb können viele Browser ihre Seiten in einer kleineren physischen GröÃe anzeigen, indem sie mehrere Hardware-Pixel für jedes CSS-"Pixel" übersetzen. Anfänglich verursachte dies Probleme bei der Nutzbarkeit und Lesbarkeit auf vielen touch-optimierten Websites.
Auf Bildschirmen mit hoher dpi werden Seiten mit initial-scale=1
von Browsern effektiv gezoomt. Ihr Text wird glatt und scharf, aber ihre Bitmap-Bilder nutzen möglicherweise nicht die volle Bildschirmauflösung. Um schärfere Bilder auf diesen Bildschirmen zu erhalten, möchten Webentwickler möglicherweise Bilder oder ganze Layouts in einem höheren MaÃstab als ihre endgültige GröÃe entwerfen und sie dann mit CSS oder Viewport-Eigenschaften herunterskalieren.
Das Standard-Pixel-Verhältnis hängt von der Displaydichte ab. Bei einem Display mit einer Dichte von weniger als 200dpi beträgt das Verhältnis 1,0. Bei Displays mit Dichte zwischen 200 und 300dpi beträgt das Verhältnis 1,5. Bei Displays mit einer Dichte von über 300dpi ist das Verhältnis der ganzzahlige Boden (dichte/150dpi). Beachten Sie, dass das Standardverhältnis nur dann zutrifft, wenn der Viewport-Skalierungsfaktor 1 beträgt. Andernfalls hängt die Beziehung zwischen CSS-Pixeln und Geräte-Pixeln vom aktuellen Zoomfaktor ab.
Viewport-Breite und BildschirmbreiteWebseiten können ihren Viewport auf eine bestimmte GröÃe setzen. Zum Beispiel kann die Definition "width=320, initial-scale=1"
verwendet werden, um perfekt auf ein kleines Handy-Display im Hochformat zu passen. Dies kann Probleme verursachen, wenn der Browser eine Seite in einer gröÃeren GröÃe rendert. Um dies zu beheben, erweitern Browser die Viewport-Breite bei Bedarf, um den Bildschirm in der angeforderten Skalierung zu füllen. Dies ist besonders nützlich auf Geräten mit groÃen Bildschirmen.
Für Seiten, die eine anfängliche oder maximale Skalierung festlegen, bedeutet dies, dass die width
-Eigenschaft tatsächlich in eine minimale Viewport-Breite übersetzt wird. Wenn Ihr Layout beispielsweise mindestens 500 Pixel Breite benötigt, können Sie das folgende Markup verwenden. Wenn der Bildschirm breiter als 500 Pixel ist, wird der Browser den Viewport erweitern (anstatt heranzuzoomen), um den Bildschirm zu füllen:
<meta name="viewport" content="width=500, initial-scale=1" />
Andere Attribute, die verfügbar sind, sind minimum-scale
, maximum-scale
und user-scalable
. Diese Eigenschaften beeinflussen die anfängliche Skalierung und Breite sowie die Begrenzung von Ãnderungen des Zoomniveaus.
Interaktive UI-Widgets des Browsers können die GröÃe der Viewports der Seite beeinflussen. Das häufigste dieser UI-Widgets ist eine virtuelle Tastatur. Um zu steuern, welches GröÃenänderungsverhalten der Browser verwenden soll, setzen Sie die Eigenschaft interactive-widget
.
Zulässige Werte sind:
resizes-visual
Der visuelle Viewport wird durch das interaktive Widget verändert.
resizes-content
Das Viewport wird durch das interaktive Widget verändert.
overlays-content
Weder das Viewport noch der visuelle Viewport wird durch das interaktive Widget verändert.
<meta name="viewport" content="interactive-widget=resizes-content" />
Wenn das Viewport verändert wird, wird auch der initiale enthältende Block verändert, wodurch die berechnete GröÃe von Viewport-Einheiten beeinflusst wird.
Ãbliche Viewport-GröÃen für Mobil- und TabletgeräteWenn Sie wissen möchten, welche Mobil- und Tabletgeräte welche Viewport-Breiten haben, gibt es eine umfassende Liste von Viewport-GröÃen für Mobil- und Tabletgeräte hier. Diese liefert Informationen wie die Viewport-Breite in Hoch- und Querformat sowie die physische BildschirmgröÃe, das Betriebssystem und die Pixeldichte des Geräts.
Spezifikationen Siehe auchRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4