Ondřej Šteigl - Logo ONDŘEJ ŠTEIGL
CSS

Jak udělat web, který funguje na mobilu

Většina lidí dnes kouká na telefonu. Ukážeme si tři věci, díky kterým se web sám přizpůsobí displeji – viewport, pružné rozměry a media queries.

Čtení 9 min mírně pokročilý Naposledy upraveno 29. 9. 2026

Předtím: Barvy, písmo a rozvržení v CSS

Skoro každý dnes otevře web nejdřív na telefonu. Když se stránka na mobilu rozsype – text je maličký, musí se posouvat do stran, tlačítka nejdou trefit – návštěvník rychle odejde. Google navíc weby přívětivé k mobilu upřednostňuje ve vyhledávání. Dobrá zpráva: udělat web „responzivní" (takový, co se sám přizpůsobí displeji) stojí na třech jednoduchých věcech. Pojďme na ně.

1. Jedna řádka, na kterou se nejčastěji zapomíná

Úplný základ responzivity je jediná značka v <head> stránky. Bez ní telefon web zmenší, jako by šlo o počítačový monitor – všechno je pidi. Přidejte tuhle řádku:

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

Říká prohlížeči: „šířku ber podle displeje zařízení a nezmenšuj stránku napevno". Tohle je nutný start – bez téhle řádky nezaberou ani triky níže.

💡 Tip: Pokud jste procházeli náš návod o první stránce, tuhle řádku už v kostře máte. Jen se ujistěte, že tam opravdu je.

2. Nepoužívejte pevné šířky

Největší nepřítel mobilu je pevná šířka v pixelech. Když dáte width: 800px, na telefonu širokém 360 px stránka přeteče a musí se posouvat do stran. Řešení: místo pevné šířky používejte pružné hodnoty.

/* ŠPATNĚ – pevná šířka */
.obsah { width: 800px; }

/* DOBŘE – přizpůsobí se, ale nepřeroste */
.obsah { max-width: 800px; width: 100%; }

A jedno pravidlo, které vyřeší většinu problémů s obrázky, aby nikdy nevykoukly „ven" z displeje:

img { max-width: 100%; height: auto; }
💡 Tip: max-width: 100% znamená „buď jak velký chceš, ale nikdy širší než rodič". Obrázek se tak na mobilu sám zmenší.

3. Media queries – jádro responzivity

Media query je pravidlo v CSS, které říká „tohle použij jen když je displej takhle široký". Nejčastěji ho využijete pro úzké displeje (telefony). Zápis vypadá takto:

@media (max-width: 600px) {
  /* pravidla jen pro displeje užší než 600 px */
}

Ukažme si to na typické situaci: dva sloupce vedle sebe na počítači, které se na mobilu poskládají pod sebe.

.sloupce { display: flex; gap: 20px; }
.sloupce > div { flex: 1; }

@media (max-width: 600px) {
  .sloupce { flex-direction: column; }
}

Na širokém displeji jsou boxy vedle sebe (flex-direction je normálně row). Jakmile se displej zúží pod 600 px, media query přepne směr na column a boxy se srovnají pod sebe:

na počítači (široký displej)
Sloupec A
Sloupec B
na telefonu (úzký displej)
Sloupec A
Sloupec B
💡 Tip: Hranici (tady 600 px) si zvolíte podle webu. Běžné „zlomy" bývají kolem 600 px (telefon) a 900 px (tablet). Není to žádné dané číslo – nastavte ji tam, kde se vám rozvržení začne rozpadat.

Ještě dvě věci pro pohodlí na mobilu

Jak si to vyzkoušet

Nemusíte mít deset telefonů. Stačí:

Časté chyby

Všechny návody

Nechcete web řešit sami a chcete ho mít hotový a profesionální?

Podívejte se na tvorbu webů →

© Ondřej Šteigl. Autorem návodů jsem já. Obsah je autorským dílem chráněným podle zákona č. 121/2000 Sb. (autorský zákon). Kopírování, přebírání nebo šíření bez mého předchozího písemného souhlasu je zakázáno. Výukové použití je vítáno – stačí uvést zdroj (osteigl.cz).

← Zpět na všechny návody