kulturbanause Blog

Responsive Design, WordPress, Konzeption, HTML, CSS, JS & UX/UI …

Websites für das iPhone X optimieren: weiße Balken entfernen, Viewport anpassen, Safe Area festlegen

Das iPhone X verwendet ein nahezu randloses Display, dass sich über die gesamte Vorderfläche des Geräts erstreckt. Da das iPhone insgesamt abgerundet ist, sind auch die Ecken des Displays abgerundet. Daher müssen Designer für das iPhone X einige Besonderheiten berücksichtigen um im Safari für iOS auch wirklich das gesamte Display für die Website zu verwenden. In diesem Beitrag beschreiben wir, wie ihr mit geringem Aufwand Websites für das iPhone X optimieren könnt.

Workshops und Seminare von kulturbanause

Unsere Berlin-Termine für Ende 2017 sind online!

Jetzt Tickets sichern!

Weiße Balken im Safari auf dem iPhone X

Zunächst eine beruhigende Information: Eure Website erzeugt keine schlimme Fehldarstellung auf dem iPhone X, solltet ihr keine Optimierung vorgenommen haben. Allerdings zeigt Safari je nach Ausrichtung des Geräts oben und unten bzw. rechts und links einen weißen Balken an. Das hängt damit zusammen, dass der Browser nicht automatisch entscheidet wie sich eurer Web-Layout im Bereich der abgerundeten Displayecken verhalten soll. Daher geht Safari auf Nummer sicher und zeigt lieber einen weißen Balken an um den notwendigen Sicherheitsabstand zum Rand des Displays einzuhalten.

Ohne jegliche Anpassung wird die für diesen Beitrag erstellte Beispiel-Website wie folgt dargestellt:

Optimierung mittels background-color

Um die weißen Balken optisch zu entfernen, kann die background-color des <body> verwendet werden. Diese Lösung funktioniert gut bei schlichten Websites mit durchgängig einfarbigem Hintergrund.

Wenn allerdings die Hintergrundgestaltung unterschiedlich farbiger Bereiche jeweils horizontal bis zum Ende des Viewports ausgedehnt werden soll, funktioniert diese Lösung nicht gut. Für unser Beispiel wäre es wünschenswert, dass der hellgraue Inhaltsbereich und die dunkelgraue Navigationsleiste ebenfalls rechts und links weiterlaufen.

Die weißen Balken auf dem iPhone X wurden mittels background-color blau eingefärbt. Besser, aber in diesem Fall noch nicht ausreichend

Optimierung mit viewport-fit:cover

Um die Gestaltung nahlos bis an die Kante des Displays weiterlaufen zu lassen, hat Apple dem bereits bekannten <meta name="viewport"> den neuen Befehl viewport-fit=cover spendiert, der runde Displays berücksichtigt und auch in der CSS Round Display Specification beschrieben wird.

<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">

Nachteilig an dieser Lösung ist, dass – je nach Gestaltung der Website – Inhalte verdeckt bzw. angeschnitten werden können.

Mit viewport-fit=cover skaliert die Website nahlos bis an die Displaykante heran

Definition von »Safe Areas« mittels constant(safe-area-inset-*)

Um den unerwünschten Anschnitt von Inhalten zu vermeiden, kann ab iOS 11 zusätzlich zur o.g. Viewport-Eigenschaft die sog. »Safe Area« definiert werden – also ein sicherer Bereich, in den keine Inhalte hineinlaufen können. Details dazu findet ihr in den Human Interface Guidelines von Apple.

iPhone X Safe Areas
Orange eingezeichnet: safe-area-inset-left, und safe-area-inset-right

Um die Safe Area festzulegen existieren die folgenden Eigenschaften, die wiederum auf margin, padding und absolute Positionsangaben (position: absolute) angewandt werden können:

  • safe-area-inset-top
  • safe-area-inset-right
  • safe-area-inset-left
  • safe-area-inset-bottom

Im Code unseres Beispiels sieht es dann z. B. so aus. Die Safe-Areas werden in der CSS-Funktion constant() notiert.

nav { 
  background: #0f1214; 
  padding:  
    constant(safe-area-inset-top)  
    constant(safe-area-inset-right)  
    0  
    constant(safe-area-inset-left);
}
Für das iPhone X optimierte Website mittels viewport-fit und constant()

Demos

Wie eingangs erwähnt haben wir eine Beispiel-Seite gebaut um das Verhalten nachvollziehen und optimieren zu können. Zur Simulation haben wir den iPhone X-Simulator von Apple Xcode verwendet.

Demo: Website ohne Optimierung

Demo: Website mit Optimierung

Links / Quellen

Jetzt bist du gefragt!

Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.

Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!

Unterstützung bei Responsive Design-Projekten

Unsere Agentur ist auf responsive Design spezialisiert. Wir realisieren u.a. maßgeschneiderte Websites und führen Schulungen durch. Wenn du Unterstützung bei der Planung, Gestaltung und Entwicklung einer Website im Responsive Design benötigst, helfen wir gerne weiter.
Responsive Webdesign-Leistungsangebot →

Das könnte dich auch interessieren

Kommentar verfassen

Dieser Blog lebt vom Feedback der Besucher! Also los, mach mit!
Bitte habe Verständnis dafür, dass Kommentare die mit dem Inhalt dieses Beitrags nichts zu tun haben, gelöscht werden.