Есть множество вариантов нормализации стилей css и в некоторых есть такое вариант
* {
box-sizing: border-box;
}
Вот только не пойму в чем подвох этой записи?
Почему так делать не нужно?
Хотя сам постоянно пользуюсь сбросом стилей с такой строкой и не нарывался на подводные камни . Может я чего то не знаю
Не плохо. Я пишу, мне хорошо. Я туда еще и псевдоэлементы обычно добавляю, некоторые исключают или пишут ниже отдельные box-sizing для элементов, к которым они привыкли в другой модели, мне так редко это нужно, что когда нужно, я меняю этот момент в классе элемента.
Ясно, смотрю в bootstrap https://github.com/twbs/bootstrap/blob/main/dist/c... тоже такой подход используют. А другой модели я не знаю (вернее не юзал), я пришел в веб когда box-sizing у меня в всех проектах был по умолчанию border box
Юра Комаров, свежая кровь, в общем без этого свойства ширина блока с внутренними отступами и обводкой вас может удивить, и чтоб физическая ширина была нужной, приходилось в уме считать сколько что занимает, спасибо вебу, что принес нам border-box!
Юра Комаров, насколько я знаю, нормалайз это не совсем про обнуление, это скорее приведение настроек многих бразуеров к единому значению, дефолтные свойства стилей, вот это все. Это скорее оставленная возможность решать пользователю какой ставить border-size и чему, например, чтоб те, кто верстал с другим border-size внезапно, подключив normalize не удивились тому, что им придется все пересчитывать
Подвоха нету, почитайте описание свойства и будете знать все подвохи.
Вкратце, box-sizing: border-box; рассчитывает ширину и высоту элемента из paddingи border. Другие параметры смотрите по ссылке