Кратко
Скопированоborder
— это логическое свойство-шорткат. Он создаёт у элемента рамки по блочной оси.
Блочная ось связана с направлением потока сайта. Например, для русского и английского языков border
рисует границу сверху и снизу элемента (поток идёт сверху вниз), а для японского справа и слева (поток идёт справа налево).
Пример
Скопированоdiv { border-block: 5px solid white;}
div { border-block: 5px solid white; }
Как понять
СкопированоС помощью border
граница нарисуется всегда там, где нужно, вне зависимости от языка 😎
Допустим, мы хотим выделить текст сверху и снизу аккуратными границами. Попробуем сделать это с помощью свойств border
и border
:
div { border-top: 7px dashed white; border-bottom: 7px dashed white;}
div { border-top: 7px dashed white; border-bottom: 7px dashed white; }
А теперь текст будет на японском языке, для этого сменим поток и посмотрим, что будет:
div { writing-mode: vertical-rl;}
div { writing-mode: vertical-rl; }
Язык другой, направление письма другое, а границы всё там же — сверху и снизу. Теперь используем правильное свойство border
и снова понаблюдаем:
div { writing-mode: vertical-rl; border-block: 7px dashed white;}
div { writing-mode: vertical-rl; border-block: 7px dashed white; }
Сейчас всё логично: стиль письма справа налево, и граница справа и слева текста, как мы и хотели. border
обо всём позаботился!
Как пишется
Скопированоborder
пишется так же, как и border
, а ещё сокращает такие же свойства. Отличие лишь в том, что border
в записи заменяется на border
:
border
— ширина границы;- block - width border
— стиль границы;- block - style border
— цвет границы.- block - color
Можно отдельно стилизовать одну из границ по аналогии с border
и border
:
border
— первая граница по направлению блочной оси;- block - start border
— вторая граница.- block - end
Подсказки
Скопировано💡 Когда нужно, чтобы видимые границы блока разместились в противоположном блочной оси направлении, используйте свойство border
, — оно рисует видимые границы по направлению строчной оси.
div { border-inline: 5px solid white;}
div { border-inline: 5px solid white; }