2014-08-21 2 views
3

Я пытаюсь улучшить скорость своего сайта, поскольку я интегрирую определенные функции темы, которую я приобрел на своем сайте, и наткнулся на эту интересную функцию на веб-сайте указанной темы.Запретить загрузку всей таблицы стилей CSS - загрузить только необходимый контент?

Проблема, с которой я столкнулся, - это моя таблица стилей CSS, абсолютно массивная (220kb) и занимает возраст (3-4 секунды) для загрузки. Я работаю над тем, чтобы уменьшить это, но это совсем другая история ...

Когда я пытаюсь загрузить ту же самую страницу на веб-сайте темы, она загружается намного быстрее. После проверки на моем веб-сайте я нахожу, что размеры стилей «Размер» и «Содержание» в инструментах dev примерно одинаковы.

На странице разработчика размер намного меньше, чем содержание. Означает ли это, что ТОЛЬКО элементы, вызываемые в HTML, загружаются из таблицы стилей? Если да, то как это сделать, потому что это звучит чрезвычайно эффективно.

Я также думал, что это потому, что страница разработчика кэшировала контент в моем браузере, но я отключил кеш, и он по-прежнему загружает только часть содержимого.

Кэш моего сайта работает, кстати, меня просто интересует ускорение начального времени загрузки.

Любые мысли?

Соответствующие изображения:

Cache Отключено:

сайт Dev с малым отношением размер/контента - http://i.imgur.com/B3uhOWF.png

Мой сайт с ~ 1: 1 размер/соотношение содержания - http://i.imgur.com/Ymu2YRz.png

ответ

2

Off в верхней части головы вы можете минимизировать свой CSS. Есть несколько бесплатных инструментов, включая страницу Speed ​​Insights для Chrome.

См https://developers.google.com/speed/docs/insights/MinifyResources

Похоже, ваш CSS уже в уменьшенной файле, но, возможно, содержание нет!


Просто так люди не смущены. Решение состояло в том, чтобы включить gzip на сервере, о котором вы можете узнать больше в https://developers.google.com/speed/articles/gzip (но все же минимизируйте свой css).

+0

Holy F ### Я только что включил GZip благодаря этой статье. Вот как я себя чувствую: http://stream1.gifsoup.com/webroot/animatedgifs2/1365838_o.gif Спасибо за отличный пост – user3100907

+0

Мое удовольствие. GZip для победы! – worldofjr

+0

Один быстрый вопрос о GZip - это 100% на моем сервере, правильно? Так что поддержка GZipped-версии файлов не требуется со стороны клиента? Не имеет значения, обращается ли он к сайту с устаревшим браузером/компьютером/конфигурацией, он получит сжатую версию независимо от того, что, правильно? (Предполагая, что мой сайт может работать на устаревших браузерах/os без проблем.) – user3100907

1

Благодаря пользователю worldofjr, я нашел ответ на включение GZIP на сервере.

Невероятное увеличение скорости.

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

1

«На странице разработчика размер намного меньше, чем содержание. Означает ли это, что ТОЛЬКО элементы, вызываемые в HTML, загружаются из таблицы стилей? Если да, то как это можно сделать, потому что это звучит потрясающе эффективный «.

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

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

Во всяком случае, несколько вещей, чтобы рассмотреть, прежде чем продолжить:

Я думаю, 200k действительно, действительно большой для таблицы стилей. Большинство сайтов, на которых я работаю с общим весом CSS, могут составлять 20 тыс. Или менее. Я бы расследовал, почему ты такой огромный. Может, что-то пошло не так. Минификация может помочь, но она не собирается сбивать вас с толку на порядок.

Однако, даже если это самый большой в мире файл CSS, 200k не является большим. Не 4-5 секунд. Я работаю над сайтом прямо сейчас, когда целая страница весит ~ 350 кбайт, и я загружаю ее через секунду. Опять же, я подозреваю, что что-то еще пошло не так. Размер этого CSS, вероятно, указывает на что-то, но я подозреваю, что это не просто время, которое требуется для загрузки файла.

+0

Причина, по которой файл global.css настолько массивный, потому что это тема, над которой я работаю. Таким образом, у них есть все возможные перестановки для каждого элемента, и схема именования ужасна (например, xx-section-border-has-bound-green-outline, а затем список из 20 вариантов для разных цветов и т. Д.). Я выборочно вытягивал элементы, которые мне нужны, и интегрировал их в более мелкий глобальный файл для моего конкретного сайта. Мой текущий файл составляет около 63 КБ перед любым сжатием. И это до моих файлов типографии и конкретных таблиц стилей плагинов ... – user3100907