⊗mkSpGdGIO 119 of 128 menu

Позиционирање на елементи во CSS Grid

Во grid системот е предвидена можност за позиционирање на едни елементи врз други при пресек на grid области или одредување на негативни надворешни margins. Позиционирањето може да се случи по default, но исто така за секој елемент може да се постави во одреден редослед преку својствата z-index и order, како и нивната комбинација.

Позиционирање на елементи во grid по default

Да претпоставиме дека имаме табела во која елементите се преклопуваат еден со друг:

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

:

Промена на редоследот на позиционирање на елементи со својството order

Сега да го примениме својството order, поставувајќи го во секој дете елемент:

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

:

Редослед на позиционирање на елементи со својството z-index

Сега да го примениме својството z-index, кое овозможува прилагодување на редоследот на поставување на елементите долж 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; }

:

Како што може да се види од добиениот резултат, највисоката вредност на својството z-index го поставува елементот да се наоѓа над другите елементи со пониски вредности.

Комбинирање на позиционирање на елементи со својствата order и z-index

Ако го смениме редоследот за елементите со z-index и order, тогаш приоритетот ќе остане за z-index. Благодарение на што може да се менува редоследот на елементите, но притоа да не се изгуби контрола над нивното позиционирање:

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

:

Практични задачи

Да претпоставиме дека во нашиот grid има четири елементи:

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

Поставете ги сите елементи во соответствие со следниов пример, користејќи го својството order:

А сега за решавање на претходната задача применете го својството z-index.

Да претпоставиме дека во нашиот grid има четири елементи:

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

Поставете ги сите елементи во соответствие со следниов пример, користејќи го својството order:

А сега за решавање на претходната задача применете го својството z-index.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј