VerbAlexVlad
@VerbAlexVlad
Программист-любитель

Как закэшировать css стили?

В папке web/css, у меня, куча файлов с большим количеством стилей в каждом файле.

Какие-то стили нужны, какие-то просто висят без дела.

Вопрос, возможно ли как-то, выдернуть из всех этих файлов только используемые стили???

Например зашел я на страницу, а он хоп, и в отдельную папку (например cach/css) сохранил файл, с теми стилями которые были на данной странице... А потом просто их склеить, и получить один файл.
  • Вопрос задан
  • 136 просмотров
Пригласить эксперта
Ответы на вопрос 2
mashletov
@mashletov
Math.random()
А как комп определит какие стили используемые? Это довольно сложная задача: стили наследуются, добавляются динамически с помощью js.

Лишнее это. Используйте webpack / gulp, чтобы собрать все в 1 min файл и этот файл будет закеширован браузером.
Ответ написан
Комментировать
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
Вот в чем Ваша ошибка:
на каждой странице свой набор нужных css. Можно сделать под каждую только нужные и кормить браузеру нужный css файл. Но так как браузеры кешируют ресурсы, такие как css, то оказывается, что это менее оптимально. 1 закешированный файл со всем css чаще более быстро работает и сокращает запросы к серверу, чем куча мелких, но "требующих себя закачать".
Много есть действительно разумных вариантов оптимизации и можно книгу написать (критический css + асинхронно остальное и т.д.). Но если коротко:
смотрите в сторону gulp, объединения и минификации css, а не сепарации.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы