gistpreview.github.io загружает html с Javascript с помощью Github Gist API . Из исходного кода он просто записывает содержимое html. Таким образом, он не имеет дело с относительными ссылками, которые могут ссылаться на другие файлы css.
Вам потребуется:
- форк проекта gistpreview
- после рендеринга html (
document.write
), переберите теги link
и проверьте, присутствуют ли они в поле files
результата API - загрузите css содержимое динамически при совпадении
Я тестировал этот метод выше, используя эту вилку .
Пример для вас: https://bertrandmartel.github.io/gistpreview.github.io/?943286be35fd690f499d59534281a6c5
Код перед:
var content = info.files[fileName].content;
document.write(content);
Код после:
var content = info.files[fileName].content;
document.write(content);
//load links
var links = document.querySelectorAll("link");
for (let [key, value] of Object.entries(info.files)) {
for (var i = 0; i < links.length; i++) {
var href = links[i].getAttribute("href").replace(/^\/|\/$/g, '');
if (value.filename === href && value.type === "text/css") {
console.log("load file " + value.filename);
var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML = value.content;
document.getElementsByTagName('head')[0].appendChild(style);
}
}
}