АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
⊗mkSpFxGTAW 104 of 128 menu

Водступы ў плітачнай раскладцы з аўташырынёй блокаў на CSS

Хай у нас ёсць плітачная раскладка па чатыры блока ў шэраг:

.child { width: 25%; }

Дадаймо нашым блокам водступы ў працэнтах па гарызанталі і па вертыкалі:

.child { margin-right: 1.5%; margin-bottom: 1.5%; } .child:nth-child(4n) { margin-right: 0; }

Пакуль тое, што мы зрабілі, будзе працаваць няправільна, бо сумарная шырыня блокаў і водступаў больш за 100%. Для правільнай працы мы павінны ад кожнага блока адняць пэўны кавалачак, каб было месца пад нашы водступы. Давайце вылічым гэтыя кавалкі.

У нашым выпадку атрымліваецца, што блокаў чатыры, а паміж імі тры водступу - па паўтара працэнты. Каб вылічыць аднімаемы кавалачак, трэба сумарны водступ падзяліць на колькасць блокаў:

1.5% * 3 / 4 = 1.125

Тады шырыня кожнага блока будзе роўная:

25% - 1.5% * 3 / 4 = 23.875%

Атрымаецца наступны код:

.child { width: 23.875%; margin-right: 1.5%; margin-bottom: 1.5%; } .child:nth-child(4n) { margin-right: 0; }

Можна не вылічваць гэты водступ самім, а пакласці працу па вылічэнню на функцыю calc:

.child { width: calc(25% - 1.5% * 3 / 4); margin-right: 1.5%; margin-bottom: 1.5%; } .child:nth-child(4n) { margin-right: 0; }

Шырыню блока таксама хай вылічае функцыя calc:

.child { width: calc(100% / 4 - 1.5% * 3 / 4); margin-right: 1.5%; margin-bottom: 1.5%; } .child:nth-child(4n) { margin-right: 0; }

Задайце блокам шырыню ў працэнтах так, каб у плітцы стала тры блока ў шэраг, а паміж імі адлегласць у 3%.

Задайце блокам шырыню ў працэнтах так, каб у плітцы стала шэсць блокаў у шэраг, а паміж імі адлегласць у 0.5%.

Задайце блокам шырыню ў працэнтах так, каб у плітцы стала чатыры блока ў шэраг, а паміж блокамі было адлегласць у 30px.

Задайце блокам шырыню ў працэнтах так, каб у плітцы стало пяць блокаў у шэраг, а паміж блокамі было адлегласць у 50px.

byenru