Комментарии 26
А разве большое кол-во грузящихся файлов ресурсов не является bad practice?
Да. Мое решение только для режима разработки, когда удобно дебажить файлы по отдельности, а не слитые в один. В тексте это написано, но легко пропустить. Переформулирую.
Ясно. Из поста было не совсем понятно, что это «only for dev mode», наверное смутила фраза
Менять бэкенд, что бы он склеивал статику на лету и выводил другую логику специально для IE было непропорционально трудозатратно.
Я как-то обычно делаю так: создал основной css, потом файлик какой-то структуры или элементов. Отладил? Отдал в общий. Но в соответвующий комментарий. И работает очень даже хорошо.
НЛО прилетело и опубликовало эту надпись здесь
Хватает одной.
НЛО прилетело и опубликовало эту надпись здесь
Ладно вам с большим количеством… Полгода потратили на 30 строк?
Вроде только для IE8 и меньше. И почему-то условный комментарий для всех ИЕ, хотя еще есть ИЕ9 и ИЕ10.
>>>Потом в IE начали пропадать стили из разных блоков, и мы осознали, что столкнулись с проблемой всех крупных проектов
*HANDSHAKE*
*HANDSHAKE*
А не проще ли пересобирать все файлы каким-нибудь make'ом и смотреть? Для чего вообще нужно подключать поотдельности каждый ccs'ник — пусть даже для отладки. Можно же как-то задавать классы, совпадающие с частью названия css-файла?
Попробуйте SCSS. У меня куда больше, чем 30 файлов, но в браузере работаю с одним. Генерирует всё на лету при сохранении, довольно быстро (не обращаю внимание на время, жму в браузере F9 (css_reloader) и вижу изменения). Из недостатков стоит отметить лишь то, что нельзя править файл прямо в браузере. Но этот недостаток с лихвой окупается огромными возможностями SASS\SCSS.
<style type="text/css">
@import url("import1.css");
@import url("importN.css");
</style>
Я просто оставлю это здесь. И никаких js.
В основе вашей модульной структуры лежит методология наподобие БЭМ либо используется какой-то иной подход?
Сейчас используем как у Google Closure Library. JS иклудит js, scss иклудит scss, html рендерится яваскриптом. Еще полгода назад блоки бились по мотивам БЭМ. Html блоки инклудили js и scss, а последние сами подтягивали нужные зависимости. Подробности есть в статье Фронт-энд Островка изнутри.
В Яндексе CSS и JS собирается на лету в один файл (импорты заменяются на содержимое файлов с исключением дубликатов) с использованием fast-cgi решения под названием ycssjs.
Мигрируем с него постепенно на bem server, который используется для сборки всех зависимых ресурсов страницы (например, ещё шаблонов), а не только css и js.
Для сбоки в продакшен используется ycssjs, или borschik, или bem make,
Мигрируем с него постепенно на bem server, который используется для сборки всех зависимых ресурсов страницы (например, ещё шаблонов), а не только css и js.
Для сбоки в продакшен используется ycssjs, или borschik, или bem make,
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Грузим много CSS для IE в режиме разработки