CSS Grid Elementlərinin Üst-Üstə Düşməsi
Grid sistemində, grid sahələrinin kəsişməsi
və ya mənfi xarici boşluqlar təyin edilməsi
zamanı bəzi elementlərin digərlərinin üzərində
üst-üstə düşmə imkanı nəzərdə tutulur.
Üst-üstə düşmə standart olaraq baş verə bilər,
amma həmçinin hər bir element üçün onu müəyyən
qaydada təyin etmək olar, z-index və
order xassələri və onların birləşməsi
vasitəsilə.
Grid-də elementlərin standart üst-üstə düşməsi
Tutaq ki, bizim elementlərin bir-birinin üzərində üst-üstə düşdüyü bir cədvəlimiz var:
<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 xassəsi ilə elementlərin üst-üstə düşmə qaydasının dəyişdirilməsi
İndi order xassəsini tətbiq edək,
onu hər bir uşaq elementdə təyin edək:
<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 xassəsi ilə elementlərin üst-üstə düşmə qaydası
İndi z-index xassəsini tətbiq edək,
bu xassə elementlərin z-oxu boyunca
yerləşdirilmə qaydasını tənzimləməyə imkan verir:
<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;
}
:
Alınan nəticədən göründüyü kimi,
z-index xassəsinin ən yüksək qiyməti
elementə daha aşağı qiymətlərə malik digər
elementlərin üzərində yerləşməni təyin edir.
order və z-index xassələrinin birləşməsi ilə elementlərin üst-üstə düşməsi
Əgər biz elementlərin qaydasını
z-index və order ilə dəyişdirdiksə,
prioritet z-index-də qalacaq.
Bunun sayəsində elementlərin qaydasını dəyişmək,
amma eyni zamanda onların üst-üstə düşməsi
üzərində nəzarəti itirməmək olar:
<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;
}
:
Praktiki tapşırıqlar
Tutaq ki, bizim grid-də dörd element var:
<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;
}
Bütün elementləri aşağıdakı nümunəyə uyğun
yerləşdirin, order xassəsindən istifadə edərək:
İndi əvvəlki tapşırığı həll etmək üçün
z-index xassəsini tətbiq edin.
Tutaq ki, bizim grid-də dörd element var:
<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;
}
Bütün elementləri aşağıdakı nümunəyə uyğun
yerləşdirin, order xassəsindən istifadə edərək:
İndi əvvəlki tapşırığı həll etmək üçün
z-index xassəsini tətbiq edin.