Přejít k navigační liště

Zdroják » Mobilní vývoj » iPhone X: jak si pro něj nastavit weby a proč je potřeba to udělat?

iPhone X: jak si pro něj nastavit weby a proč je potřeba to udělat?

Schválně jsem text nenazval „jak optimalizovat weby pro iPhone X“. To, co zde ukazuji, je totiž běžný a ve standardech W3C zanesený způsob přípravy webů na zařízení, která mají jiný než hranatý tvar obrazovky.

Text vyšel původně na webu autora.

Můžete z toho být nešťastní, ale asi to ničemu nepomůže. Lepší je vzít to s humorem:

Nebo ještě lépe: Zjistit důvody, proč je potřeba nehranaté obrazovky řešit a podle toho uzpůsobit své weby. Od toho jsem tady já a tenhle článek.

Stačí si představit chytré hodinky s prohlížečem a hned víte, že za to nějaký Apple s iPhone X nemůže.

V čem je problém? Zařízení tohoto typu totiž neví, zda byste raději chtěli, aby stránka šla vidět celá nebo aby byla roztažená ke krajům za cenu ořezání jejích prvků.

Weby s jednou barvou pozadí

U bílé barvy pozadí asi vše na iPhone X vše funguje.

Pokud používáte jinou barvu, zkontrolujte si, zda ji máte nastavenou na pozadí stránky:

body {
  background-color: <vaše-barva-pozadí>;
}

Mělo by to stačit.

V režimu na šířku vám iPhone X ke stranám přidá proužky v oné barvě a stránku zobrazí v šířce 724 CSS pixelů.

Weby s různobarevnými prvky roztaženými přes celou šířku stránku

I tady to může být jednoduché. Klíč je v meta značce pro viewport.

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

Hodnotou cover vlastnosti viewport-fit říkáte, že se stránka má roztáhnout na celou šířku dostupné plochy v okně prohlížeče. A že vám nevadí, že některé její části budou překryté kulatými rohy nebo výčnělkem.

Úprava Vzhůru dolů pro iPhone X

Pokud váš podbarvený obsah drží nějakou postranní ochrannou zónu, asi už nic dalšího nepotřebujete udělat.

V režimu na šířku vám iPhone X zobrazí stránku v plné šířce 812 CSS pixelů.

Na obrázku je vidět ještě jeden krok, který jsem musel udělat v případě layoutu svého webu Vzhůru dolů. Posunul jsem breakpoint roztažení stránky na plnou šířku z 768px na 813px. U ostatních zařízení je to jedno, ale na iPhone X vypadá layout bez okrajů lépe.

Weby s různobarevnými prvky bez ochranné zóny

Postranní ochrannou zónu si vyrobte vlastními paddingy nebo převezměte vestavěné hodnoty. Na iPhone X jsou všechny čtyři směry doporučené ochranné zóny uložené v proměnných safe-area-* funkce env():

.container {
  padding: 1rem;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
}

Na iPhone X se tady převezmou vestavěné hodnoty, v ostatních prohlížečích to bude 1rem.

Více o tom je v článku na blogu vývojářů Safari.

Ještě poznámka k pozicování elementů.

Zase to fixní pozicování!

Vraťte se k obrázku nahoře a v posledním screenshotu se podívejte na Tracy, ladící nástroj frameworku Nette. Vidíte křížek na její zavření? Správně, nevidíte. Je schovaný pod zakulaceným růžkem obrazovky zařízení.

A všimli jste si, že její levá část je překrytá ovládacím prvkem prohlížeče? Nepůjde ovládat ani ta.

Už dlouho říkám, že fixní pozicování prvků je na mobilech dost nebezpečné a musíte jej opravdu hodně promýšlet. Více o tom píšu v knížce o responzivním designu.

Jak to testovat?

Browserstack sice iPhone X testovat umí, ale v době psaní článku jen v režimu na výšku.

Jste tedy odkázáni na simulátor vestavěný v Xcode, pokud máte Maca.

Nebo na kamarády a kamarádky s iPhone X. Já vím, ti jsou centrem pozornosti i bez toho.

ebook-vdcss3-prebal-final

Kniha „Vzhůru do (responzivního) designu“

Kompletní průvodce návrhem a implementací responzivních uživatelských rozhraní v e-booku a knize. Více informací.

Komentáře

Odebírat
Upozornit na
guest
0 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů

Začal jako projekt studentů Matfyzu. Český BIRD dnes pomáhá řídit provoz na největších internetových uzlech

Internet drží pohromadě i díky místům, kde se propojují sítě poskytovatelů připojení, cloudů nebo videoslužeb. S předáváním informací o tom, kudy jsou jednotlivé sítě dostupné, jim ve Frankfurtu, Londýně i Amsterdamu pomáhá český BIRD. Začal jako studentský projekt, po první verzi z roku 2000 léta spíš dřímal a soustavný vývoj obnovil až CZ.NIC. Ve své úloze uspěl tak výrazně, že největší uzly nakonec začaly platit vývoj konkurenčního softwaru, aby nebyly závislé jen na něm.

WebSocket: Jak dostat webovou aplikaci do reálného času

Chat, živé notifikace, společná úprava dokumentu nebo průběžně aktualizované kurzy. Uživatelé dnes čekají, že se webová aplikace změní ve chvíli, kdy se změní data, a ne až po stisknutí klávesy F5. Protokol WebSocket je nejrozšířenější způsob, jak mezi prohlížečem a serverem vytvořit trvalý obousměrný kanál. V článku se podíváme, jak funguje pod kapotou, jak ho použít v prohlížeči i na serveru a na co si dát pozor při nasazení do produkce.