Уласцівасць box-sizing
Уласцівасць box-sizing
дазваляе мяняць
спосаб разліку памераў элемента.
Па змаўчанні даданне padding
пашырае элемент: калі мы задалі шырыню
width
100px
і padding-left
у 20px
, то рэальная шырыня элемента
будзе 120px
.
А калі мы зададзім яшчэ і border-left
у 10px
, то рэальная шырыня элемента
стане 130px
. Гэта значыць padding
і border
пашыраюць блок (і па шырыні, і па вышыні).
Гэту паводзіны можна змяніць з дапамогай box-sizing
.
Сінтаксіс
селектар {
box-sizing: content-box | border-box;
}
Значэнні
Значэнне | Апісанне |
---|---|
content-box |
І padding , і border пашыраюць блок.
|
border-box |
Ні padding , ні border не пашыраюць блок. |
Значэнне па змаўчанні: content-box
.
Прыклад . Стандартныя паводзіны
Зараз абодва блока маюць аднолькавую вышыню
і шырыню, аднак у другога блока padding
зададзены, а ў першага - не. Паглядзіце, як
адрозніваюцца іх памеры:
<div id="elem1">elem1</div>
<div id="elem2">elem2</div>
#elem1 {
width: 300px;
height: 100px;
margin-bottom: 10px;
background: #f1f1f1;
}
#elem2 {
padding: 50px;
width: 300px;
height: 100px;
background: #f1f1f1;
}
:
Прыклад . Стандартныя паводзіны
Зараз абодва блока маюць аднолькавую вышыню
і шырыню, аднак у другога блока зададзена мяжа
ў 10px
, а ў першага - не. Паглядзіце,
як адрозніваюцца іх памеры:
<div id="elem1">elem1</div>
<div id="elem2">elem2</div>
#elem1 {
width: 300px;
height: 100px;
background: #f1f1f1;
}
#elem2 {
border: 10px solid black;
width: 300px;
height: 100px;
background: #f1f1f1;
}
:
Прыклад . Стандартныя паводзіны
Зараз другі блок мае і padding
, і мяжу
ў 10px
:
<div id="elem1">elem1</div>
<div id="elem2">elem2</div>
#elem1 {
width: 300px;
height: 100px;
background: #f1f1f1;
}
#elem2 {
padding: 50px;
border: 20px solid black;
width: 300px;
height: 100px;
background: #f1f1f1;
}
:
Прыклад . Значэнне border-box
Дадамо другому элементу значэнне border-box
для ўласцівасці box-sizing
. Цяпер памеры
і першага і другога элемента стануць аднолькавымі:
<div id="elem1">elem1</div>
<div id="elem2">elem2</div>
#elem1 {
width: 300px;
height: 100px;
background: #f1f1f1;
}
#elem2 {
box-sizing: border-box;
padding: 50px;
border: 10px solid black;
width: 300px;
height: 100px;
background: #f1f1f1;
}
:
Глядзіце таксама
-
уласцівасць
outline
,
якая робіць мяжу, якая не пашырае элемент