Запіс на курсы па HTML, CSS, JavaScript, PHP, Python, фрэймворкам і CMS,
а таксама: дапамога ў пошуку працы і заказаў, стажыроўка на рэальных праектах→
⊗mkSpFxTCG 101 of 128 menu

Плітачка з карэктнымі водступамі ў 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.

byenru