⊗mkSpGdGIO 119 of 128 menu

Překrývání prvků v CSS gridu

Systém gridu poskytuje možnost překrývání některých prvků jinými při průniku grid oblastí nebo zadání záporných vnějších odsazení. Překrývání může nastat ve výchozím nastavení, ale také pro každý prvek lze nastavit jeho určité pořadí pomocí vlastností z-index a order, a také jejich kombinace.

Výchozí překrývání prvků v gridu

Předpokládejme, že máme tabulku, ve které se prvky vzájemně překrývají:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; grid-column: 1 / 4; grid-row: 1 / 5; } #elem2 { background-color: orange; grid-column: 2 / 5; grid-row: 3 / 6; } #elem3 { background-color: green; grid-column: 3 / 6; grid-row: 2 / 4; }

:

Změna pořadí překrývání prvků pomocí vlastnosti order

Nyní aplikujme vlastnost order, nastavíme ji v každém podřízeném prvku:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; grid-column: 1 / 4; grid-row: 1 / 5; order: 3; } #elem2 { background-color: orange; grid-column: 2 / 5; grid-row: 3 / 6; order: 2; } #elem3 { background-color: green; grid-column: 3 / 6; grid-row: 2 / 4; order: 1; }

:

Pořadí překrývání prvků pomocí vlastnosti z-index

Nyní aplikujme vlastnost z-index, která umožňuje nastavovat pořadí umístění prvků podél z-osy:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; grid-column: 1 / 4; grid-row: 1 / 5; z-index: 1; } #elem2 { background-color: orange; grid-column: 2 / 5; grid-row: 3 / 6; z-index: 3; } #elem3 { background-color: green; grid-column: 3 / 6; grid-row: 2 / 4; z-index: 2; }

:

Jak je vidět z dosaženého výsledku, nejvyšší hodnota vlastnosti z-index nastavuje prvku umístění nad ostatními prvky s nižšími hodnotami.

Kombinace překrývání prvků pomocí vlastností order a z-index

Pokud jsme změnili pořadí pro prvky pomocí z-index a order, pak přednost zůstane pro z-index. Díky čemuž lze měnit pořadí prvků, ale přitom neztratit kontrolu nad jejich překrýváním:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; grid-column: 1 / 4; grid-row: 1 / 5; order: 3; z-index: 1; } #elem2 { background-color: orange; grid-column: 2 / 5; grid-row: 3 / 6; order: 1; z-index: 2; } #elem3 { background-color: green; grid-column: 3 / 6; grid-row: 2 / 4; order: 1; z-index: 3; }

:

Praktické úkoly

Předpokládejme, že v našem gridu jsou čtyři prvky:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> <div id="elem4">4</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; } #elem2 { background-color: orange; } #elem3 { background-color: green; } #elem4 { background-color: lightblue; }

Umístěte všechny prvky v souladu s následujícím příkladem, s použitím vlastnosti order:

A nyní pro řešení předchozí úlohy aplikujte vlastnost z-index.

Předpokládejme, že v našem gridu jsou čtyři prvky:

<div id="parent"> <div id="elem1">1</div> <div id="elem2">2</div> <div id="elem3">3</div> <div id="elem4">4</div> </div> #parent { display: grid; grid: repeat(6, 1fr) / repeat(6, 1fr); border: 2px solid #696989; padding: 10px; width: 400px; height: 300px; } #parent > div { padding: 10px; border: 1px solid #696989; } #elem1 { background-color: pink; } #elem2 { background-color: orange; } #elem3 { background-color: green; } #elem4 { background-color: lightblue; }

Umístěte všechny prvky v souladu s následujícím příkladem, s použitím vlastnosti order:

A nyní pro řešení předchozí úlohy aplikujte vlastnost z-index.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout