我有一个使用通过HTML导入导入的样式的自定义元素。带HTML导入的聚合物自定义元素样式
从Chrome Stable(35.0.1916.114)和Canary(37.0.2008.2 canary)开始,这些样式不再应用于自定义元素中定义的模板。 Safari(7.04)和Firefox Aurora [29.0a2(2014-02-11)]看起来不错。
Chrome中是否存在回归?
E.g.我imports.html样子:
<link rel="stylesheet" href="/assets/stylesheets/libs/bootstrap.min.css" media="screen">
<script src="/assets/javascripts/libs/jquery.min.js" type="text/javascript"></script>
<script src="/assets/javascripts/libs/bootstrap.min.js" type="text/javascript"></script>
我聚合物元素的定义是这样的:
<link rel="import" href="imports.html">
<link rel="import" href="bower_components/polymer/polymer.html">
<polymer-element name="x-test">
<template>
<select id="test">
<option template repeat="{{ item in items }}" name="{{ item.id }}">
{{ item.value }}
</option>
</select>
</template>
<script type="text/javascript">
(function() {
Polymer('x-test', {
...
});
})();
</script>
</polymer-element>
使用
聚合物的版本是:
"platform": "Polymer/platform#0.2.4",
"core-action-icons": "Polymer/core-action-icons#0.2.4"
"version": "0.2.4"
您是否建议在主机页面(通过HTML导入)并使用':: shadow'和'/ deep /'或定义模板带入样式的单个自定义元素来使用单个引导程序导入,浏览器取消了对样式表的网络请求(因为这些样式可能嵌入在多个自定义元素中?) – Rahul
使用通用元素来引入样式不是可行的解决方案,因为常用元素的样式本身是有作用域的。所以我想它更容易将样式表包含在每个需要它们的模板元素中。 – Rahul
@ebidel :: shadow和/ deep /已被弃用,可能是替代选项? –