Какой смысл в CSS фреймворках, если есть чистый CSS?
Здравствуйте, товарищи веб-программисты (ну, или просто прохожие).
Изучаю веб уже достаточно давно (не мамонт, конечно, но и не "выучить веб за час")
и появился вопрос, указанный в заголовке.
Изучив такие CSS-библиотеки, как Bootstrap и TailwindCSS, понял, что все они ударяются в inline-стили.
Не знаю как у вас, но лично у меня отладка намешанной стилизации причиняет лишь боль и страдания.
Под намешанной стилизацией я понимаю большие и длинные inline-свойства, коих в документе тьма и тьмища.
Возможно, кто-то воскликнет:"Так есть же @apply!" в TailwindCSS, - и будет прав, но лишь отчасти.
Сами разработчики говорили, что стоит пользоваться этой директивой с осторожностью, иначе ты будешь, как бы, писать всё тот же CSS код.
Хорошо, допустим, мы используем TailwindCSS в связке с SCSS.
Если же мы будем писать все инлайн-стили в компонентах Vue, то на кой чёрт нам SCSS вообще?
Как-то эта тема запутана в моей голове, был бы рад, если кто-то распутает мой клубочек).
css фреймвроки нужны чтоб по быстрому набросать прототип, без какого либо дизайна
В реальных проектах с проработанными дизайн макетами css фреймворки не используются. А если используются, то дизайн макет должен быть полностью адаптирован под этот самый фреймворк
Minat0_, если хорошо знаешь фреймворк, то не быстрее. Зная css фреймворк - прототип админки можно набросать минут за 10 чисто на html, даже не заглядывая в css
Алексей, безусловно, однако, всё же, это субъективно: можно как писать прототипы, так и сделать дизайн.
Лично для меня это не объяснение, когда стоит использовать CSS-фреймворк, а когда, например, препроцессор, и есть ли вообще смысл от использования обоих сразу?
Представьте, что вы решили собрать машину!
Да, можно сделать самоделку из деталей, каждую из которых вы выточите сами. Это писать на чистом CSS.
Препроцессоры это станки, на которых можно сделать детали. Они это делают удобнее и точнее.
Фреймворк же это как автомобильная платформа, на которой выпускают машины: сочетание инженерных решений и набора компонентов, что уже использовалось для выпуска других моделей.
Сборщик это конвеер, который помогает вам избавиться от рутины.
Тот же бутстрап довольно хорошо кастомизируется и расширяется уже вашими стилями, если внимательно почитать документацию и собрать его самому из исходников. Собственно, фреймворки нужны, чтобы не наступать на те грабли, на которые наступило множество людей до вас.
Но опять же - все зависит от задачи! Собираете болид - нужен один фреймворк, а если грузовик - то другой)))
С фреймворками уходит меньше времени на вёрстку, чем если писать самому. Плюсы чистого css в том, что ты можешь более гибко настраивать внешний вид сайта. Но с например bootstrap легче делать сайт адаптивным, и система сеток тоже очень удобная
Насколько мне известно, систему сеток можно взять отдельно от всей библиотеки.
Да, уходит меньше времени, но как ты потом это поддерживать будешь?
Что, если изначально написанное inline-свойство будет лишним?
Что, если оно не нужно на каком-то определенном разрешении экрана?
А теперь представь, что этих свойств несколько и тебе нужно разобрать каждый.
Что такое инлайн свойство?
Когда мы говорим инлайн-стили - это означает тег style="", где прямо в html-разметке начинают стилизовать элемент, не вынося это в отдельный css-файл.
И что с бутстрапом в этом отношении не так и где он инлайн?
Что значит большие проекты не пишут на css-фреймворках? Большие проекты только на них и делают, ибо это стандарт, при с котором работает команда и подрядчики. Тем более, вы не следите за обновлениями браузерных движков так как это делают разработчики css-фреймворков и шанс, что вы накосячите, делая css с нуля куда выше, чем если использовать популярный и актуальный css-фреймворк.
Фреймворк это не таблетка от всех болезней и не кнопка "сделать шедевр", после установки которого - можно сделать весь сайт без кастомного css.
Мы в сущности используем бутстрап как библиотеку, а не фреймворк.
4-й бутстрап уже с давних пор написан на SASS/SCSS. Поэтому причин не использовать родной компилятор я не вижу. Можно подключать через scss бутстрап, через variables менять настройки шрифтов и цветов.
Но свой css вы не обязаны на нем писать. Но, как минимум, если дизайн делался в соответствии с 12-ти колоночной сеткой и почти все элементы внутри него, тоже подчиняются этому правилу - то подрубить "bootstrap/grid" я думаю не составит же проблем?
Да, мы не используем весь бутстрап, но мы и не подрубаем его весь, а подключаем только те модули которые нужны.
Вообще мало что используется из библиотек целиком и полностью. Где-то модалки, где-то сетка, где-то кнопки.
И конечно все через сборщик, а не так вот как раньше.