При просмотре туториалов, связанных с версткой заметил, что часто перед началом работы, авторы задают какие-то стили по умолчанию, переопределяют дефолтные стили браузера. Собственно, возникло пару вопросов по этому поводу:
По умолчанию, в браузерах есть встроенные определения для HTML-элементов. Например, у <body> и <p> есть margin, у <ul> и <ol> есть padding и list-style, ну и так далее. В каждом браузере эти предустановленные значения могут быть разными, соответственно, normalize.css или reset.css нужны для того, чтобы стартовать с одинаковой базы. Различие их состоит в том, что normalize.css приводит все элементы к одинаковому стилю, а reset.css сбрасывает всё полностью в ноль. Лично мне больше нравится использовать reset.css, потому что, как правило, все элементы потом всё равно переопределяются и для каждого проекта формируется некое подобие UI kit. Но если вы верстаете страницу без формирования определения всех элементов, то, возможно, вам подойдет normalize.css — так вам не надо будет задавать отступы между параграфами и заголовками, переопределять списки и т. д.
Тут всё упирается в то, какую стратегию вы выбрали :) Мой необходимый набор:
*, *:after, *:before {
box-sizing: border-box;
margin: 0;
padding: 0;
}
Хорошая статья на HTML-академии и на Хабре.
Код: reset.css, normalize.css.
P.S. reset будущего будет выглядеть примерно так:
* {
all: unset;
}
head {
display: none;
}
Есть два основных подхода - reset.css и normalize.css. Остальное - в google.com
html, body
{
margin: 0;
padding: 0;
}
Остальное - ручки)
Используйте normalize.css популярная и проверенная библиотека для нормализации стилей в разных браузерах. А дальше используйте сброс(задавать по умолчанию) стилей по вашему вкусу.
Делается для того, чтобы у всех браузеров привести дефолтные стили к какому-то номиналу, и получить более ожидаемое поведение от элементов на странице и не было всевозможных "призрачных" отступов в каком-нибудь фаерфоксе, и корректного отображения в хроме(например).
Переопределяются в основном ссылки, списки, отступы внутренние и внешние у body, div'a, поля ввода, по большому счету, все, что используется в проекте, по хорошему необходимо "обнулить".
reset.css. Например, как можно видеть на скрине, в разных браузерах стили рендерятся по разному. В данном случае, FF добавил отступ перед тэгом p. Во избежание таких случаев и применяются сбросы стилей.
Немного советов:
Написанное выше является выдержкой из статьи с хабра, отсюда, .
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости