css - 在模板标签内使用远程样式表(带 shadow dom)

标签 css html stylesheet shadow-dom templatetag

我正在尝试制作一个半可重复使用的小部件,但我遇到了问题。我试图将一些 CSS 代码封装在影子根中,这样它就不会影响网页的其余部分,但是这个 CSS 用于多个小部件,所以我试图包含一个远程样式表。我发现的所有示例都没有使用远程样式表,我想知道这是否可行。

例如:

<template id="templateContent">
    <head>
        <link rel="stylesheet" href="css/generalStyle1.css">
    </head>
    <body>
        <div class="affectedByGeneralStyle1"></div>
    </body>
</template>

包含模板的脚本:

<div id="host"></div>
<script>
    var importedData = (html_import_element).import.getElementById("templateContent");
    var shadow = document.querySelector('#host').createShadowRoot();
    var clone = document.importNode(importedData.content, true);
    shadow.appendChild(clone);
</script>

最佳答案

我最近遇到了同样的问题。我最终做的是使用:

<template id="templateContent">
     <style> @import "css/generalStyle.css"; </style>
</template>

附加信息:这工作得很好,除了现在我遇到了一些缓存问题,因为 Chrome 在硬重新加载后似乎没有重新加载这些资源。

关于css - 在模板标签内使用远程样式表(带 shadow dom),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23176330/

相关文章:

javascript - 安全错误 firefox document.stylesheets 中的操作不安全

javascript - 手机版网站滑动功能

html - 堆叠图像和跨度标签彼此相邻 - bootstrap

javascript - 如何使用谷歌自动完成功能在 vue.js 中设置多个字段?

html - 使用 <br> 标签时,滚动条从 <div> 中消失

asp.net - 使用皮肤文件,无法设置启用和禁用按钮之间的差异

javascript - 单击后禁用 HTML 链接

css - 覆盖 CSS !重要

javascript - 将多个数组索引传递给 jquery 触发器

html - 背景图片会影响网站加载速度吗