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

Zdroják » Webdesign » Zachování pozice scrollování pomocí overflow-anchor

Zachování pozice scrollování pomocí overflow-anchor

Články ‐ ‐ Webdesign ‐

CSS vlastnost overflow-anchor umožňuje nastavit, jak si má prohlížeč pamatovat, kam bylo odscrollováno.

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

Poměrně dlouhou dobu prohlížeče neřešily situace, kdy se na stránce stane něco, co způsobí odrolování někam pryč.

Typicky v těchto dvou případech:

  1. Změní se orientace z výšky na šířku nebo obráceně (zejména u mobilních zařízení).
  2. Před obsahem se donačte nějaký prvek se zprvu neznámými rozměry a stránka poskočí. Například video, obrázek nebo reklama.

Návštěvník prochází webem, a když nastane některý z výše uvedených případů, je ztracen, protože ve viewportu stránky (aktuálně viditelné oblasti) vidí najednou něco úplně jiného, než co tam bylo předtím.

Druhý případ s obsahem o neznámých rozměrech si povětšinou zkušený tvůrce webů dokáže ohlídat, viz text Poskakování stránky, proč vadí a jak se ho zbavit.

Řešit změnu orientace ale už nejde bez nějakého relativně komplikovaného počítání a scrollování v JavaScriptu.

Naštěstí oba případy začaly automaticky řešit přímo prohlížeče. Porovnejte si chování:

A prohlížeče Chrome 56+ (leden 2017) a Firefox 66+ (březen 2019) dokáží toto chování ovlivňovat relativně mladou CSS vlastností overflow-anchor.

CSS vlastnost overflow-anchor

Právě vlastnost overflow-anchror zapíná/vypíná toto chytré zapamatování odrolování. A nastavuje se pro elementy s posuvníkem (tedy pro celou stránku nebo pro elementy s overflow: auto a overflow: scroll).

Kromě globálních hodnot inherit, initial a unset existují 2 specifické hodnoty:

overflow-anchor: auto
Prohlížeč se sám snaží chovat chytře (výchozí chování, které budete pravděpodobně preferovat).
overflow-anchor: none
Zakáže automatické pokusy prohlížeče o lepší uživatelský zážitek. Hodí se jako pojistka u elementů, kde je nějaké vlastní javascriptové scrollování, pokud výchozí chování prohlížeče způsobuje problémy.

Ve většině případů nebudete muset nic měnit a necháte prohlížeč pracovat po svém. Pokud vám to nevyhovuje, můžete chytrost prohlížeče vypnout.

Odkazy

Komentáře

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

Vercel zrychlil směrování v CDN. Překvapivě pomohly menší bloky

Vercel zrychlil směrování v CDN tím, že začal načítat víc dat najednou. U velkých webů mu po každém nasazení scházely v cache údaje o mnoha jednotlivých cestách, takže je musel opakovaně dohledávat. U nových bloků metadat Vercel naměřil o 91 % kratší dobu tohoto hledání v 99. percentilu. Cesta k výsledku ale vedla přes nečekané zjištění: příliš velký blok se při vyřizování požadavků nevyplatil.

GraphQL: Alternativa k REST API zblízka

Když se dnes navrhuje nové API, většina vývojářů automaticky sáhne po RESTu. Je to pochopitelné: REST je jednoduchý, dobře zdokumentovaný, podporují ho všechny jazyky a frameworky a většina z nás s ním pracuje léta. Přesto se v posledních letech stále častěji objevuje otázka, zda je REST vždy tou nejlepší volbou. Nejčastěji zmiňovanou alternativou je GraphQL, dotazovací jazyk pro API, který vznikl ve Facebooku a který dnes používají firmy jako GitHub, Shopify nebo Netflix.

Technologická úzkost drtí české firmy. Data ukazují chaos v digitalizaci, festival Digifest s prestižními záštitami nabízí cestu ven

Přesycenost trhu softwarem, desítky vyzkoušených a opuštěných nástrojů, hodiny ztracené v formulářích a neustálý strach z toho, že firmě ujede vlak. Český byznys prochází obdobím technologické úzkosti. Přestože podle aktuálních dat vyčleňuje AI rozpočet naprostá většina společností, realita v českých kancelářích má k opravdové transformaci daleko. Odpověď na to, jak proměnit technologie v reálný zisk a udržet krok s konkurencí, přináší 5. ročník festivalu a konference Digifest, který se koná 14.října v pražském Cubexu.