⊗mkSpGdGIO 119 of 128 menu

Sobreposição de Elementos no Grid CSS

O sistema de grid oferece a possibilidade de sobrepor alguns elementos sobre outros quando as áreas do grid se intersectam ou quando são especificadas margens externas negativas. A sobreposição pode ocorrer por padrão, mas também é possível definir uma ordem específica para cada elemento através das propriedades z-index e order, bem como sua combinação.

Sobreposição de elementos no grid por padrão

Suponha que temos uma tabela na qual os elementos se sobrepõem uns aos outros:

<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; }

:

Alterando a ordem de sobreposição dos elementos com a propriedade order

Agora vamos aplicar a propriedade order, definindo-a em cada elemento filho:

<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; }

:

Ordem de sobreposição dos elementos com a propriedade z-index

Agora vamos aplicar a propriedade z-index, que permite ajustar a ordem de posicionamento dos elementos ao longo do eixo z:

<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; }

:

Como pode ser visto no resultado obtido, o valor mais alto da propriedade z-index posiciona o elemento acima dos outros elementos com valores mais baixos.

Combinação de sobreposição de elementos com as propriedades order e z-index

Se alterarmos a ordem dos elementos usando z-index e order, a prioridade permanecerá com o z-index. Isso permite alterar a ordem dos elementos, mantendo o controle sobre sua sobreposição:

<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; }

:

Tarefas práticas

Suponha que em nosso grid existam quatro elementos:

<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; }

Posicione todos os elementos de acordo com o exemplo a seguir, usando a propriedade order:

Agora, para resolver a tarefa anterior, aplique a propriedade z-index.

Suponha que em nosso grid existam quatro elementos:

<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; }

Posicione todos os elementos de acordo com o exemplo a seguir, usando a propriedade order:

Agora, para resolver a tarefa anterior, aplique a propriedade z-index.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar