Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
И первое, и второе.
Посмотрите скринкасты по вебпаку. Человек объясняет как пользоваться вебпаком очень доходчиво, по делу и без воды. Тему загрузки css тоже затрагивает.
define(['css!styles/main'], function() {
//code that requires the stylesheet: styles/main.css
}); var linkLoad = function(url, callback) {
var link = document.createElement('link');
link.type = 'text/css';
link.rel = 'stylesheet';
if (useOnload)
link.onload = function() {
link.onload = function() {};
// for style dimensions queries, a short delay can still be necessary
setTimeout(callback, 7);
}
else
var loadInterval = setInterval(function() {
for (var i = 0; i < document.styleSheets.length; i++) {
var sheet = document.styleSheets[i];
if (sheet.href == link.href) {
clearInterval(loadInterval);
return callback();
}
}
}, 10);
link.href = url;
head.appendChild(link);
}
Четно говоря, сам не проверял, но, судя по документации, этот модуль нормально работает с оптимизатором
https://github.com/guybedford/require-css#optimizer-configuration
cssAPI.load = function(cssId, req, load, config) {
(useImportLoad ? importLoad : linkLoad)(req.toUrl(cssId + '.css'), load);
}
var link = document.createElement('link');
link.type = 'text/css';
link.rel = 'stylesheet';
...
link.href = url;
head.appendChild(link);
btoa("кириллица");
link.href = "data:text/css,"+encodeURI(cssText);
<html>
<head>
<style>
body {background-color: black;}
</style>
<link rel="stylesheet" href="data:text/css,body%20%7Bbackground-color:%20red%7D">
</head>
<body>
</body>
</html>
Еще один способ подгрузки CSS через RequireJS