我正在编写一个类似自定义<figure>
的元素,我想<figcaption>
在主要内容下放置一个。<figcaption>
需要包含来自自定义元素的子节点的一些内容(具有潜在格式的文本),我正在为此使用<content select="span.caption"></content>
. 但是,根据Shadow DOM 规范,<span>
已经分发到<content></content>
布局自定义元素主体的较早元素。
我尝试使用<content select=":not(span.caption)"></content>
来避免分发标题,但这似乎不是复合选择器并且不匹配任何内容。
让元素按我想要的顺序呈现的推荐方法是什么?
这是有问题的代码,也位于http://jsbin.com/vizoqusu/3/edit:
<!DOCTYPE html>
<html>
<head>
<script src="//cdnjs.cloudflare.com/ajax/libs/polymer/0.1.4/platform.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/polymer/0.1.4/polymer.js"></script>
<meta charset="utf-8">
</head>
<body>
<polymer-element name="my-figure" noscript>
<template>
<figure>
<content></content>
<figcaption>Figure 7: <content select="span.caption"></content></figcaption>
</figure>
</template>
</polymer-element>
<my-figure>
Hello World!
<span class="caption">The caption</span>
</my-figure>
</body>
</html>