CSS-те дұрыс шектеулері бар плитка
Шын мәнінде проблемаларсыз жұмыс істейтін марджиндар арқылы шектеулері бар плитка жасайық. Бізде бастапқыда шектеулері жоқ мынадай плитка бар болсын:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
<div class="child">3</div>
<div class="child">4</div>
<div class="child">5</div>
<div class="child">6</div>
<div class="child">7</div>
<div class="child">8</div>
<div class="child">9</div>
</div>
.parent {
display: flex;
flex-wrap: wrap;
width: 300px;
border: 1px solid red;
}
.child {
box-sizing: border-box;
width: 100px;
height: 100px;
border: 1px solid green;
}
:
Элементтер арасындағы көлденең шектеулерді
margin көмегімен жасайық.
Ол үшін барлық бала элементтерге
margin-right қасиетін 10px деп белгілейік,
ал әрбір үшінші бала элементтің бұл margin-ін нөлге теңейік.
Бұл үшін nth-child сәндік сыныбын қолданамыз,
онда параметрді әрбір үшінші элементті алу үшін
белгілейміз.
Шектеулерге орын беру үшін ата элементтің енін 320px-ге дейін
үлкейтіп, нәтижені көрейік:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
<div class="child">3</div>
<div class="child">4</div>
<div class="child">5</div>
<div class="child">6</div>
<div class="child">7</div>
<div class="child">8</div>
<div class="child">9</div>
</div>
.parent {
display: flex;
flex-wrap: wrap;
width: 320px;
border: 1px solid red;
}
.child {
box-sizing: border-box;
width: 100px;
height: 100px;
margin-right: 10px;
border: 1px solid green;
}
.child:nth-child(3n) {
margin-right: 0;
}
:
Сонымен, бәрі жұмыс істейді. Соңғы қатарда элементтер аз болуы үшін соңғы элементті алып тастап, соңғы қатарда бізде проблемалар болмайтынына көз жеттейік:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
<div class="child">3</div>
<div class="child">4</div>
<div class="child">5</div>
<div class="child">6</div>
<div class="child">7</div>
<div class="child">8</div>
</div>
.parent {
display: flex;
flex-wrap: wrap;
width: 320px;
border: 1px solid red;
}
.child {
box-sizing: border-box;
width: 100px;
height: 100px;
margin-right: 10px;
border: 1px solid green;
}
.child:nth-child(3n) {
margin-right: 0;
}
:
Элементтер арасындағы қашықтығы 20px болатын,
бір қатарда екі элементтен тұратын плитка жасаңыз.