Почему не стоит использовать сброс стилей (reset.css, обнуление стилей CSS)

Виталий П.

Созидатель (II)
Сообщения
13
Симпатии
1
Баллы
150
Я первый раз решил записать информационный ролик. Знаю что многие не примут это, но я не могу молча смотреть как в 2023 году каждый второй урок для новичков начинается с того, что им рекомендуют обнулять стили. В общем вот:

 
сброс стилей не так работает. где ты этого набрался, я хз.
если это действительно в курсах для новичков, ну тогда это проблема этих курсов.
 
сброс стилей не так работает. где ты этого набрался, я хз.
Очень интересно, а как же на самом деле работает сброс стилей?

если это действительно в курсах для новичков, ну тогда это проблема этих курсов.
Это общая проблема, потому что с этим кодом потом придется кому-то работать, и эти же новички потом будут учить подключать reset.css других и так по кругу.
 
Последнее редактирование:
Очень интересно, а как же на самом деле работает сброс стилей?
Можно сделать сброс всех стилей, а можно частичный.
Что бы вы понимали, для чего делается сброс всех стилей, то вам нужно углубится в кроссбраузерность. Для серьезных проектов, полный сброс обязателен, а для мелких проектов, полный сброс нафиг не нужен, а вот частичный нужен обязательно
 
Можно сделать сброс всех стилей, а можно частичный.
Да ладно 1696506630704.jpeg

Что бы вы понимали, для чего делается сброс всех стилей, то вам нужно углубится в кроссбраузерность.
Я углубился и скорее всего про кроссбраузерность знаю больше вашего.

Для серьезных проектов, полный сброс обязателен, а для мелких проектов, полный сброс нафиг не нужен, а вот частичный нужен обязательно
Теперь все понятно, это серьезный аргумент
 
Очень интересно, а как же на самом деле работает сброс стилей?
нет смысла делать сброс в том виде в котором ты показал, т.е. в ноль.
есть смысл обработать каждый элемент стилями заново, под проект, для того что бы во всех браузерах все выглядело идентично.
т.е. заменить браузерные стили своими.
 
Теперь все понятно, это серьезный аргумент
А что вам не нравится?
То что новичков приучают с самого начала делать по правилам, точно так же как : Сел за руль авто - пристегни ремень?
Я все таки подытожу: нет смысла делать сброс
Смысл есть, о нём уже написали:
есть смысл обработать каждый элемент стилями заново, под проект, для того что бы во всех браузерах все выглядело идентично.
 
А что вам не нравится?
То что новичков приучают с самого начала делать по правилам, точно так же как : Сел за руль авто - пристегни ремень?
Скорее: Сел за руль, оторви ремень с корнями и замени на свой, а если забыл свой ремень, езжай без ремня, авось пронесет.

В аналогии я тоже умею играть, как и в кроссбраузерность и в обнуление стилей, ваша реакция меня только радует, ведь вы следующий раз задумаетесь над этим вопросом, обратите внимание на те вещи которые вам казались само собой разумеющимися.

Смысл есть, о нём уже написали:
есть смысл обработать каждый элемент стилями заново, под проект, для того что бы во всех браузерах все выглядело идентично.
А теперь просто вдумайтесь все теги должны выполнять свою роль в том числе визуально быть отличимыми и желательно такими, какими их привыкли видеть пользователи. Если они были обнулены, всем им нужно задать стили. Отсюда вытекает закономерный итог, если мы зададим стили всем тегам, которые обнулили (то есть переопределим ранее созданные правила), то зачем эта прослойка обнулений тогда вообще нужна, если она по сути не используется? НО, если же мы какие-то теги так и оставим обнуленными, то когда они будут применены, получится дер*мо (извиняюсь за выражение), это может понадобится и через год и через два. Ну вот заказчик захочет написать какую-то формулу расчета для солнечной электростанции или в каком-то блоге прям идеально подходит использовать список с римскими маркерами, а верстка ему это не позволяет сделать. Почему он должен быть ограничен? Просто потому что верстальщику было удобно все сбросить под ноль, сделать по дизайну и проигнорировать потенциальные потребности? Теперь он должен тратить свое время и деньги, чтобы внедрить фичу, которая по умолчанию должна работать, но верстальщик решил, что не должна..
 
НО, если же мы какие-то теги так и оставим обнуленными, то когда они будут применены, получится дер*мо (извиняюсь за выражение), это может понадобится и через год и через два. Ну вот заказчик захочет написать какую-то формулу расчета для солнечной электростанции или в каком-то блоге прям идеально подходит использовать список с римскими маркерами, а верстка ему это не позволяет сделать. Почему он должен быть ограничен? Просто потому что верстальщику было удобно все сбросить под ноль, сделать по дизайну и проигнорировать потенциальные потребности? Теперь он должен тратить свое время и деньги, чтобы внедрить фичу, которая по умолчанию должна работать, но верстальщик решил, что не должна..
ну так это проблема не в сбросе, а проблема в верстальщике - который не восстановил элементы после сброса.
если в сайт не закладывалась возможность вывода того или иного тэга, на кой мне тратить время, а соответственно и деньги заказчика? только потому что, возможно, в обозримом будущем через 3 года заказчик захочет что-то сделать не входящее в планы дизайнера?
многие сайты не живут больше года. так же многие проекты остаются просто проектами.
 
ну так это проблема не в сбросе, а проблема в верстальщике - который не восстановил элементы после сброса.
Ну и опять мы возвращаемся к моменту, если нужно все восстанавливать, зачем сбрасывать?

если в сайт не закладывалась возможность вывода того или иного тэга, на кой мне тратить время, а соответственно и деньги заказчика?
Ничего тратить не придется, если не урезать нативные возможности браузера. Тот же normalize.css просто корректирует различия между браузерами, а из обнулений в реальности нужен только:
CSS:
body {
  margin: 0;
}
 
Объясню на пальцах, если не знали, а если знали, то освежите память
У разных браузеров есть свои вшитые правила, например padding и margin в разных браузерах у элементов могут различаться.
И что бы они были идентичны во всех браузерах, делается сброс стилей.
Да, это не всем и не всегда нужно!
А то что не определены стили у несуществующих элементов на текущий момент, так это не к текущему верстальщику, а к текущему ТЗ или к будущему.
Если вы не используете и не советуете использовать сброс стилей, то это не означает что он не нужен.
 
Объясню на пальцах, если не знали, а если знали, то освежите память
У разных браузеров есть свои вшитые правила, например padding и margin в разных браузерах у элементов могут различаться.
И что бы они были идентичны во всех браузерах, делается сброс стилей.
Я прекрасно понимаю что вы считаете, что если у двух браузеров margin может отличаться, то лучшее, что вам приходит в голову, это убрать margin полностью, вместо того чтобы например сделать их одинаковыми для тех элементов у которых они должны быть. Просто попытайтесь осознать это в какой-то период своей деятельности, отрицание это первый шаг.

смешной ты. решил сообщений на хайпе заработать?
Мне на этом форуме сообщения не нужны, от слова совсем. Как и баллы. Можно их списать, я не против. Ты спрашиваешь я отвечаю, это называется диалог, ну в твоем случае скорее спор.
 
если у двух браузеров margin может отличаться, то лучшее, что вам приходит в голову, это убрать margin полностью, вместо того чтобы например сделать их одинаковыми для тех элементов у которых они должны быть.
на протяжении всего диалога мы об этом и говорим. но ты не пытаешься вникнуть в смысл наших слов.
 
на протяжении всего диалога мы об этом и говорим. но ты не пытаешься вникнуть в смысл наших слов.
К сожалению мы говорим о разных вещах, обнулить и нормализовать это разные понятия, которые следует изучить, прежде чем останавливаться на единственном подходе, который, кода-то показался хорошей идеей.
 
Я как начинающий и криворукий верстальщик выскажу своё ИМХО.
Если мне бы заказали вёрстку лендинга, где нужно прописывать правила тысячи элементам, то я бы сделал именно сброс стилей.
Сколько в браузерах забито правил, вы знаете? Я лично нет.
Сбросить стили и прописать только те, что нужно.
То что будет после сдачи проекта меня не должно волновать
только потому что, возможно, в обозримом будущем через 3 года заказчик захочет что-то сделать не входящее в планы дизайнера?
Это задача и обязанность будет для верстальщика который будет это выполнять.
 
Если мне бы заказали вёрстку лендинга, где нужно прописывать правила тысячи элементам, то я бы сделал именно сброс стилей.
В том то и дело, вам не нежно прописывать правил для тысяч элементов. Все что вам нужно это сверстать по дизайну. А вот в случае когда вы сделали глобальный сброс, вот тогда вам и нужно заново переписать эти тысячи сброшенных элементов иначе они так и останутся сброшенными. И чем меньше вы понимаете это тем более безобидным вам кажется концепция обнуления, поэтому новички так легко и принимают эту концепцию, которая потом становится привычкой.

Это задача и обязанность будет для верстальщика который будет это выполнять.
Этой задачи в принципе не появится, если теги изначально будут выполнять те функции, для которых они предназначены и переопределены, только те, которые вам необходимо переопределить по дизайну.

Сбросить стили и прописать только те, что нужно.
Так пропишите именно те что нужно и не трогайте ничего лишнего. Ваша задача сделать верстку по дизайну, вам ничего не помешает определить необходимые стили не обнуляя все теги.

Вам как новичку очень советую присмотреться к концепции normalize.css
 
Так пропишите именно те что нужно и не трогайте ничего лишнего. Ваша задача сделать верстку по дизайну, вам ничего не помешает определить необходимые стили не обнуляя все теги.
Если вы верстали страницы за 10-30$ то да, полный сброс стилей не нужен, а когда вам дадут задание сверстать и проработать страницу за 150-200$, в ТЗ которого будет прописано нужно проработать такие то элементы, добавить тени отступы и тд, где прорабатываемых элементов будет очень много, то вами просто придётся сделать сброс. Это будет быстрее и проще, так как при сбросе сразу видно, для какого элемента прописаны правила, а для какого нет. Вот таких проектах и идёт речь.
Пока вы не столкнётесь с такой задачей несколько десятков раз, не поймёте.
 
Если вы верстали страницы за 10-30$ то да, полный сброс стилей не нужен, а когда вам дадут задание сверстать и проработать страницу за 150-200$, в ТЗ которого будет прописано нужно проработать такие то элементы, добавить тени отступы и тд, где прорабатываемых элементов будет очень много, то вами просто придётся сделать сброс. Это будет быстрее и проще, так как при сбросе сразу видно, для какого элемента прописаны правила, а для какого нет. Вот таких проектах и идёт речь.
Пока вы не столкнётесь с такой задачей несколько десятков раз, не поймёте.
Очень глупая попытка задеть меня, ссылаясь на стоимость работы. Я прошел долгий путь, я работал в компаниях (онлайн,офлайн, снг и иностранные), но всегда возвращаюсь к фрилансу, потому что у меня большая база клиентов, которые всегда ко мне возвращаются с новыми интересными проектами именно потому что я отношусь к их проектам с полной ответственностью. Некоторые свои крупные проекты я поддерживаю уже более 5 лет и да, 5 лет назад я и сам использовал reset.css или его концепцию. Именно мой опыт позволил мне сделать определенные выводы, к которым судя по всему у вас еще будет время прийти. Занимаясь не только штамповкой макетов по дизайну, но и их долгосрочной поддержкой, начинаешь понимать, что определенные решения, заложенные в самом начале, приносят больше вреда чем пользы и каждый последующий проект уже лишен этого изъяна.

Это будет быстрее и проще, так как при сбросе сразу видно, для какого элемента прописаны правила, а для какого нет.
Это безответственно, как я и говорил ранее, это проще для верстальщика, который не оценивает потребности бизнеса, а работаешь лишь в угоду себе.

то вами просто придётся сделать сброс.
Не придется так как в этом нет необходимости, если вы переопределяете сброшенные стили, то ничего глупее, чем делать ненужную прослойку из сброшенных стилей сложно придумать.

Вы можете написать тысячи сайтов, это не значит, что вы способны развиваться. Когда я смотрю на текущие работы тех разработчиков на которых я ровнялся в начале своей карьеры, от некоторых из них у меня просто шок, они применяют все теже методы, устаревшие версии библиотек и т.д.. просто потому что им платят за конвер шаблонов, а не за их качество.
 
Назад
Верх