
22. základní škola Plzeň, Na Dlouhých 49, příspěvková organizace
Tento materiál byl vytvořen v rámci projektu Operačního programu Vzdělávání pro konkurenceschopnost.
| Projekt MŠMT ČR | EU PENÍZE ŠKOLÁM |
|---|---|
| Číslo projektu | CZ.1.07/1.4.00/21.2732 |
| Název projektu školy | EU Peníze školám |
| Klíčová aktivita III/2 | Inovace a zkvalitnění výuky prostřednictvím ICT |
Sada č. 1
Identifikátor DUM: VY_32_INOVACE_1ICT9roč_16
Vzdělávací oblast: Informační a komunikační technologie
Vzdělávací obor: Informatika
Autor: Mgr. Ondřej Hajduch
Stručná anotace: Používání vybraných CSS vlastností pro nastavení vnitřních a vnějších okrajů.
Klíčová slova: vnitřní okraj, padding, vnější okraj, margin.
Metodické zhodnocení: Žáci se naučí používat vybrané CSS vlastnosti pro nastavení vnitřních a vnějších okrajů.
Ověřeno: 14. 2. 2013 (IX.A)
Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Ondřej Hajduch
Při tvorbě webových stránek rozlišujeme dva typy okrajů HTML elementů:
Základním rozdílem mezi těmito okraji je vykreslování pozadí. Pod vnějším okrajem se pozadí elementu nevykresluje, naopak pod vnitřním okrajem ano.
obecný zápis: selektor {margin: top right bottom left}
selektor {margin: 10px 15px 5px 20px}
Nastaveno bude: horní okraj 10 pixelů, pravý okraj 15 pixelů, spodní okraj 5 pixelů, levý okraj 20 pixelů.
obecný zápis: selektor {margin: top/bottom left/right}
selektor {margin: 10px 15px}
Nastaveno bude: horní okraj 10 pixelů, pravý okraj 15 pixelů, spodní okraj 10 pixelů, levý okraj 15 pixelů.
obecný zápis: selektor {margin: top/right/bottom/left}
selektor {margin: 20px}
Nastaveno bude: horní okraj 20 pixelů, pravý okraj 20 pixelů, spodní okraj 20 pixelů, levý okraj 20 pixelů.
selektor {margin: 0px auto}
selektor {margin-top: 10px; margin-right: 15px; margin-bottom: 20px; margin-left: 25px;}
je totožné jako
selektor {margin: 10px 15px 20px 25px}
selektor {padding: 10px 15px 5px 20px}
selektor {padding: 10px 15px}
selektor {padding: 20px}
selektor {padding-top: 10px; padding-right: 15px; padding-bottom: 20px; padding-left: 25px;}
je totožné jako
selektor {padding: 10px 15px 20px 25px}
Dále je důležité si uvědomit celkové rozměry blokového HTML prvku, kterému nastavíme vnější okraj, vnitřní okraj a navíc ohraničení.
Vysvětlíme si na příkladu:
Pokud nastavíte např. obrázku šířku (width) 400 pixelů, přidáte vnitřní okraj (padding) 10 pixelů, ohraničení (border) 5 pixelů a vnější okraj (margin) 20 pixelů, výsledná celková šířka, kterou HTML prvek zabere na stránce, bude součet těchto hodnot, tedy 470 pixelů !!! (levý vnější okraj 20 px + levé ohraničení 5 px + levý vnitřní okraj 10 px + šířka 400 px + pravý vnitřní okraj 10 px + pravé ohraničení 5 px + pravý vnější okraj 20px).
V praxi to znamená, že pokud máte omezený prostor na umístění blokového HTML prvku (např. šířka 400 pixelů), musíte zmenšit šířku daného HTML prvku o součet vnějšího, vnitřního okraje a ohraničení (v našem příkladu o 70 pixelů na výsledných 330 pixelů).

Obr. 1: Zvětšení rozměrů při použití okrajů a ohraničení.
Internet Explorer chybně počítá celkové rozměry v blokovém modelu CSS tak, hodnoty ohraničení (border) a vnitřního okraje (padding) započítává do šířky (width), místo toho, aby je přípočítával k šířce.
Příčinou je to, že IE má jako výchozí nastaven nestandardní mód zobrazení (tzv. quirk mód). Ostatní prohlížeče (Firefox, Chrome, Opera) mají jako výchozí tzv. standardní mód, který správně interpretuje šířku (width).
Řešením je změna typu HTML dokumentu <!DOCTYPE> úplně na prvním řádku HTML kódu.
<!DOCTYPE HTML PUBLIC>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">