Přeskočit na obsah
Výkon & rychlost

CSS Baseline 2026: SharedWorker, jednotky lh/rlh a image-rendering, které zrychlí váš web

5 min čtení

Web Platform Baseline v roce 2026 přidal do sady „bezpečně použitelných“ funkcí několik menších, ale prakticky velmi užitečných novinek – jednotky lh a rlh, vlastnost image-rendering a API SharedWorker. Žádná z nich nezpůsobí revoluci sama o sobě, ale dohromady umožňují psát méně JavaScriptu a rychlejší, čistší kód.

Jednotky lh a rlh: konec ručního počítání výšky řádku

Jednotka lh odpovídá vypočtené hodnotě line-height elementu, na kterém je použita. To usnadňuje situace, kdy potřebujete, aby ikona, odznak nebo pozadí přesně odpovídalo výšce jednoho řádku textu – typicky u badge vedle nadpisu nebo zvýraznění kolem textu. Jednotka rlh funguje stejně, ale vztahuje se k line-height kořenového elementu (root), podobně jako rem funguje vůči kořenové velikosti písma.

Prakticky to znamená, že věci, které dřív vyžadovaly JavaScript nebo odhad v pixelech a následné doladění, teď zvládne čisté CSS: height: 1lh u ikony vedle textu se automaticky přizpůsobí, když se změní typografie. Méně kódu, méně re-renderů, méně layout shiftů – tedy přímý dopad na Core Web Vitals, o kterých jsme psali v souvislosti se zpřísněním hodnocení výkonu od Google.

image-rendering: ostré pixel-art a QR kódy bez rozmazání

Vlastnost image-rendering řídí algoritmus škálování při zvětšování nebo zmenšování obrázku. Ve výchozím stavu prohlížeče obrázky vyhlazují, což je v pořádku u fotografií, ale škodí u pixel artu, ikon v nízkém rozlišení nebo QR kódů, kde rozmazání hran ztěžuje čitelnost. Hodnota pixelated zajistí ostré hrany i po zvětšení, což se hodí například u e-shopů prodávajících retro herní grafiku, generovaných QR kódů pro platby nebo miniatur v administraci.

SharedWorker: sdílený stav napříč taby beze serveru

SharedWorker je specializovaný background worker přístupný z více kontextů prohlížeče najednou – různých oken, tabů nebo iframů na stejné origin doméně. Na rozdíl od běžného Web Workeru, který patří jedné stránce, SharedWorker umožňuje koordinovat stav a úlohy mezi více otevřenými taby stejné aplikace.

Typický případ použití: e-shop otevřený ve dvou tabech by měl mít synchronizovaný obsah košíku, aniž by se muselo pokaždé volat server nebo spoléhat na localStorage a polling. SharedWorker dovoluje udržet jeden zdroj pravdy v paměti a distribuovat aktualizace do všech otevřených oken okamžitě – užitečné i pro real-time notifikace nebo sdílené WebSocket připojení, které nechcete zbytečně násobit podle počtu otevřených tabů.

Proč na tom záleží pro výkon webu

Společným jmenovatelem těchto tří funkcí je, že nahrazují JavaScriptové knihovny nebo provizorní řešení nativní, prohlížečem optimalizovanou funkcionalitou. Méně stažených knihoven znamená menší JS bundle, rychlejší parsing a menší zátěž hlavního vlákna – tedy přesně to, na co se zaměřují metriky jako INP, o kterých jsme psali v souvislosti s WordPress výkonem a PHP 8.4. „Baseline 2026″ navíc znamená, že tyto funkce fungují napříč aktuálními verzemi Chrome, Edge, Firefoxu i Safari, takže je lze nasadit bez polyfillů.

Jak s tím začít

Nejjednodušší je začít tam, kde už dnes používáte JavaScriptové řešení jen kvůli výšce řádku nebo sdílení stavu mezi taby, a zkusit, zda to nahradí čisté CSS nebo SharedWorker. U produkčních projektů doporučujeme ověřit podporu přes caniuse.com nebo přímo web.dev/baseline a postupně nahrazovat provizorní řešení tam, kde to dává smysl – ne najednou, ale jako součást běžné refaktorizace.

Co to znamená pro reálné projekty

Konkrétní příklad: badge s počtem položek v košíku vedle ikony, který se dřív musel přepočítávat v JavaScriptu při každé změně velikosti písma nebo breakpointu, dnes stačí nastylovat pomocí width: 1lh; height: 1lh; a hotovo – responzivita je vestavěná. Podobně u interní administrace e-shopu, kde se zobrazují miniatury produktových kódů nebo generovaných QR plateb, přidání image-rendering: pixelated u zvětšených náhledů okamžitě zlepší čitelnost bez nutnosti generovat samostatné soubory ve vyšším rozlišení.

U SharedWorkeru je dobré mít na paměti, že podpora napříč prohlížeči byla historicky nerovnoměrná – Baseline 2026 status znamená, že aktuální verze všech čtyř hlavních enginů už API podporují, ale weby s velmi konzervativní cílovou skupinou (starší firemní prohlížeče) by měly ověřit reálnou penetraci u svých návštěvníků, než se na SharedWorker plně spolehnou jako na jediné řešení.

Závěr

Baseline 2026 znovu potvrzuje trend posledních let: prohlížeče postupně přebírají práci, kterou dřív musely dělat JavaScriptové knihovny. Pro vývojáře to znamená menší, rychlejší a udržitelnější kód. Chcete zjistit, kde váš web zbytečně táhne JavaScript navíc? Rádi provedeme audit výkonu.

Potřebujete pomoc s webovým projektem?

Rádi vám pomůžeme. Konzultace je zdarma a nezávazná.

Poraďte se s námi
Začněme spolupráci

Řekněte nám o svém projektu

Popište svůj projekt a ozveme se vám.

50+ spokojených firem
Odpovíme do 24h
Konzultace zdarma
Bc. Martin Procházka
zakladatel & vývojář
Vyplňte prosím své jméno.
Zadejte platnou e-mailovou adresu.
Zadejte platné telefonní číslo.
Popište nám prosím, co potřebujete.
Musíte souhlasit se zpracováním osobních údajů.