Web-заметки №9. Сброс и нормализация отступов (normalize.css, reset.css)
Привет!
В этом видео из рубрики web-заметки рассказываю о правильном подходе к сбросу и нормализации отступов. Что лучше - reset.css или normalize.css и почему.
disk.yandex.ru/d/3LNmGXICMXxquA - пример сброса
Меня зовут Максим Васянович. Фрилансер уже 5 лет, создал более 50 коммерческих сайтов. Преподаватель в онлайн-университете Skillbox, автор курса Веб-верстка.
Понравилось? clck.ru/Gr9Ec
Моя страница вконтакте: maxdenaro
Мой блог: blog.maxgraph.ru
Мой сайт: maxgraph.ru
Канал в телеграм: teleg.run/maxgraph
Чат для верстальщиков: teleg.run/maxgraph_chat
#ityoutubersru #web_заметки #верстка
Пікірлер: 76
Качественно и полезно. Максим, спасибо
@maxgraph
3 жыл бұрын
Пожалуйста)
Комментарии для продвижения видео)) Спасибо Максим
@maxgraph
3 жыл бұрын
Спасибо)
Макс, красавчик!!! Всегда лайк!!!!
@maxgraph
3 жыл бұрын
Спасибо))
Ждал видео больше всех наверное)))
@maxgraph
3 жыл бұрын
Хех)
Спасибо за ролик 🦾
@maxgraph
3 жыл бұрын
Пожалуйста)
Очень полезно! Спасибо!!
@maxgraph
2 жыл бұрын
Пожалуйста)
Марджины я и сам оказывается как-то интуитивно делал как ты сказал, а вот за box-sizing и в целом спасибо
@maxgraph
3 жыл бұрын
Пожалуйста)
всегда использовал reset и даже не задумывался, время переучиваться! Спасибо!)
@maxgraph
Жыл бұрын
Пожалуйста)
видос как всегда топ
@maxgraph
3 жыл бұрын
Спасибо)
Thank you, very much!
Привет , подскажи пожалуйста на чем актуально делать адаптивную верстку ? С заделом что буду переносить в реакт или вебпак , на bootstrap ? Или на флексах , или может вообще что то другое ?
@maxgraph
3 жыл бұрын
Флексы или гриды) бутстрап прошлый век
Спасибо за видео. Максим, подскажи, пожалуйста, вопрос про селектор звёздочка. Ты говоришь что * box-sizing переназначит подключаемые css стили сторонней библиотеки, если свои стили мы подключим ниже по коду. Но разве специфичность звездочки в css позволит её это сделать?
@maxgraph
8 ай бұрын
Привет. Конкретно тут дело не в специфичности, а наследовании)
Макс, у меня дома твои жучки наверное стоят) Только хотел такое же видео выпустить))) Что касается темы ролика, я с годами выработал свой собственный сброс, в котором только полезное и нужное из normalize, ну и свой код, потому как уже знаешь с чем чаще всего сталкиваешься и где могут вылазить косяки. Так как 99% моих заказов - это сайты под ключ, то какой-то конкретный сброс может аукнуться нехило, потому что контент заказчик наполняет сам, и соответственно там и заголовки и списки и т.д. Поэтому в таких случаях два варианта: либо не сбрасывать что касается контента(заголовки, списки, параграфы, ссылки и еще много чего). Либо переопределять эти элементы в каком-то конкретном блоке, что я чаще всего и делаю, таким образом стилизую элементы под тематику сайта, что выглядит намного красивее чем просто черный текст и синие ссылки)
@maxgraph
3 жыл бұрын
полюбому стоят)) но я уже давно обещал что запишу
Сразу лайк
@maxgraph
3 жыл бұрын
Спасибо)
Комментарии для продвижения видео 2. Спасибо еще раз!
@maxgraph
3 жыл бұрын
Спасибо)
Блин, у меня и колокол нажат и напоминание нажато было и никакого уведомления не пришло. Странно!Макс, спасибо за видос!
@maxgraph
3 жыл бұрын
Пожалуйста)
Спасибо. По вашим марафонам можно предположить, что вы избегаете блочных элементов(div и прочих) в ссылках? W3C разрешает это делать. Или вы не избегаете этого?
@maxgraph
11 ай бұрын
Не избегаю) просто смысла в этом нет
лайк, но есть вопросы)) Зачем для всех ссылок прописывать цвет inherit? Чаще свет текста ссылки отличается от черного(или от основного цвета текста), и прописывается в стилях отдельно. получается что это лишний код?! Часто слышал/читал что в стилях применять "*" не очень хорошая идея. Особенно если файл стилей большой то это особенно влияет на производительность сайта.
@maxgraph
3 жыл бұрын
Про ссылки - да, возможно Насчёт звёздочки - не думаю, что она влияет на что либо))
Такой вопрос, в плагинах ведь используется бокс сайзинг для классов, а у * меньше приоритет и он не перебьет класс с тем же контент боксом, вне зависимости ниже он написан или выше, тогда получается это не существенно. Или я не уловил посыл?
@miraigrafit7865
3 жыл бұрын
Аа, или суть в наследовании бокс сайзинг? Если бокс сайзинг не был написан, то будет унаследован от родителя, а не перебьется на * {…}?
@maxgraph
3 жыл бұрын
Именно)
Как обычно все классно. Единственно что пример с карточкой не очень хорош. Первым делом на ум приходит посадка на CMS, вот там как раз появляются проблемы если дефолтные стили сброшены..
@maxgraph
3 жыл бұрын
Тоже верно)
Спасибо! Беру на вооружение.
Макс привет, я видел ты и font-weight, font-size, line-height, color, которые часто повторяются тоже не пишешь на body, а пишешь для каждого элемента отдельно, там где они нужны. Это тоже связано с тем, что если модуль который разрабатывается, когда попадёт на другой сайт, чтобы ничего не сломалось и работало адекватно? Ещё заметил, что ты не объединяешь какие-то общие свойства, ну допустим: .tariffs__subtitle { color: var(--light-color); } .tariffs__price { color: var(--light-color); } .tariffs__descr { color: var(--light-color); } // а не вот так ================== .tariffs__subtitle, .tariffs__price, .tariffs__descr { color: var(--light-color); } Так же получается меньше кода?))
@maxgraph
8 ай бұрын
Да, это все из-за компонентов делаю Ну а код все равно будет одной строкой, не страшно
@Tik_Lab
8 ай бұрын
Огонь))@@maxgraph
Сейчас все собирается в один файл стилей и это исключает загрузку сброса стилей, без загрузки нужных стилей. А если не загрузился сброс, то и нормалазированные стили, тоже бы не загрузились. Модули подключать ниже основных стилей и по идеи их стили не должны сброситься (возможно унаследуют чего хз). Остаются только компоненты и только при крупных проектах со множеством верстальщиков, потому что один верстальщик сам решит, что использовать и если решит, что во всем проекте используется сброс стилей, то не возникнет проблема, что какой то компонент будет без сброса или с сбросом. Подключить один раз файл, намного удобнее, чем у каждого элемента сбрасывать отступы.
@maxgraph
3 жыл бұрын
Кому как, не вижу проблем
Итог: пиши сброс в каждом блоке, увеличь css в полтора раза и добавь гемора на расширение проекта и его поддержку. Ведь, вдруг у тебя как-то пропадут все стили, а reset.css останется... Почему просто не заинклудить reset.css в общий файл?
@maxgraph
3 жыл бұрын
Кажется вы не смотрели видео
@maxgraph
3 жыл бұрын
И кто сказал, что общий файл обязательно будет :) Да и какой общий, если вам придётся делать кусок сайта, откуда вы вообще можете знать что там общее
@user-jy6sk9ru5b
3 жыл бұрын
@@maxgraph для этого в исходниках есть нормальная структура: файлы reset.scss, global.scss, conponents.scss, fonts.css, vars.scss и отдельные файлы к каждой странице сайта. Все они импортируются в style.scss который уже подключатся к сайту. (при необходимости такую структуру можно даже разбить на css modules и перевести в scoped для современных фреймворков js). Я считаю, лучше писать чистый код, чем использовать подобные "хаки".
@olegmolchanov1774
3 жыл бұрын
@@user-jy6sk9ru5b ты тупенький просто, он имел ввиду, что если тебе придётся делать кусок сайта, ты сделаешь на своих стилях, но когда достанут из твоего проекта твой кусок кода, у них все поплывет, ибо у них в проекте этих обнуленных стилей не будет.
@maxgraph
3 жыл бұрын
Так это и есть чистый код без хаков) Я использую как раз такую структуру, но это не значит что отступы не надо обнулять правильно Насчёт scoped конечно согласен, но у нас тут другая ситуация
Не очень понял, вы говорите чтобы задавать отступы надо ставить так margin: 0 0 40px, но при такой записи, если слетят стили все равно везде, все будет по 0
@maxgraph
3 жыл бұрын
Как это? Слетит и вернутся стили по умолчанию
@detro1821
3 жыл бұрын
@@maxgraphну, если я правильно понял, не надо делать ресет, потому что в будущем css может слететь или наш блок могут перенести на другой сайт, но вы показываете запись margin 0 0 40px, это же тот самый сброс, только не глобальный, разве есть разница между сбросом у каждого элемента или у всех елементов
@maxgraph
3 жыл бұрын
Ну я же про неё рассказал)) Ещё раз Представим что вы делаете карточку для сайта, чисто карточку, не зная что там уже есть Вы сделаете глобальный ресет, а на сайте его нет, либо он другой. Все уедет. А если писать стили у элементов - неважно что там у сайта, ваши стили изолированы от остальных
@detro1821
3 жыл бұрын
@@maxgraph а понял, объяснили дурачку, только мне кажется благодаря тому же самому фрилансеру по жизни все делает ресет на своих сайтах)
@maxgraph
3 жыл бұрын
Ну пусть делают)
Я нормалайз уже года три использую. Как по мне - больше ничего и не нужно. Потому что после вёрстки натяжка на движок и там блог, статичные страницы и прочее и там ресеты скорее вредны, чем полезны. А с нормалайзом все отлично! От него нет вреда никакого.
@u-kob
Жыл бұрын
Где "там"?
обидно что теперь прейдеться каждому елементу делать сброс(
@maxgraph
3 жыл бұрын
Да ладно)
@alym.aleksey
3 жыл бұрын
Почему придётся? Никто так не делает, все используют нормалайз
@detro1821
3 жыл бұрын
@@alym.aleksey нормалайз это не ресет, все стили заголовков и тд не сбрасываются
@alym.aleksey
3 жыл бұрын
@@detro1821 сейчас уже никто не ресетит, просто нормальайзом причесывают стили под единый вид,а дальше делай, что у тебя по дизайну, ну и ты можешь расширить этот нормалайз своими базовыми стилями или прям очень необходимыми сбросами, но уж точно никто не сбрасывают отдельно каждому элементу стили как это делает автор
@detro1821
3 жыл бұрын
@@alym.aleksey ну вот у кажого заголовка есть готовые отступы, эти отступы и убирает reset
Спасибо! Очень полезно!!
@maxgraph
2 жыл бұрын
Пожалуйста))