Как подгружаются стили на одностраничных сайтах?

Рейтинг: 0Ответов: 1Опубликовано: 08.12.2014

Привет. Допустим, у одностраничного ajax-сайта есть постоянные хедер/футер и основной блок, содержимое которого подгружается через ajax. У каждой подгружаемой страницы свой набор стилей. Как их подгружать? Навскидку есть 3 варианта:

1) Запихнуть все стили в один файл/несколько файлов и подключить их одновременно.
Минусы: долгое время первой загрузки, одно пространство имён для идентификаторов и классов.

2) Менять атрибут у тега link:

HTML: <link rel='stylesheet' href='1.css' id="style">
JS: document.getElementById('style').setAttribute('href','2.css')

Минусы: новые стили подгружаются дополнительным get-запросом, получается задержка + такое вообще валидно?

3) Ответ в ajax приходит в виде json: {"style": "<стили>", "html" : "<Код>"}.
Минусы: обработчик должен каждый раз генерировать/брать откуда-то стили.

Как же поступить? Есть ещё какие-нибудь способы? Пока что самый привлекательный вариант - 2, тем более браузер, по идее, должен закэшировать файлы.

Ответы

▲ 2

У вас там супер-пупер сайт со стилями в несколько мегабайт?) Просто не заморачивайтесь и пишите все в один файл. Его можно и минифицировать еще.