在 XSLT 中为 HTML5 生成布尔自定义属性
我正在使用 XSLT,并且正在输出 HTML5 文档。在我的文档中,我需要一个自定义属性。
我想实现这一点:
<div class="row" data-template>...</div>
到目前为止,我已经设法使用 CDATA 来做到这一点,如下所示:
<xsl:text disable-output-escaping="yes"><![CDATA[<div class="row" data-template></div>]]></xsl:text>
虽然这会产生有效的标记,但当您需要使用实际节点(例如动态设置 ID)时,就会出现问题。 我的一个同伴建议使用以下输出:
<div class="row" data-template=""></div>
使用:
<xsl:attribute name="data-template" />
再次 这是有效的,但看起来有点难看。是否有另一种方法可以让我输出 HTML5 的有效自定义数据属性?
Im working with XSLT and I'm outputting an HTML5 document. In my document I need a custom attribute.
I want to achieve this:
<div class="row" data-template>...</div>
So far I have managed to do it using CDATA, like so:
<xsl:text disable-output-escaping="yes"><![CDATA[<div class="row" data-template></div>]]></xsl:text>
Whilst this produces valid markup, the problem arises here when you need to work with the actual node, such as setting the ID dynamically. One of my cohorts suggested the following output:
<div class="row" data-template=""></div>
using:
<xsl:attribute name="data-template" />
Again this is valid, but looks somewhat ugly. Is there another method that allows me to output valid custom data attributes for HTML5?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您是否已经尝试过:
但是我认为不可能摆脱键值对
Did you already tried:
However I think is not possible to get rid of key-value pairs
您可能希望接受这样一个事实:
生成名称-值对属性,但使其在语义上作为布尔值有意义。应该会产生
看起来不那么难看的东西。
You might want to live with the fact that
<xsl:attribute>
produces a name-value pair attribute but make it semantically sensible as a boolean value.should produce
which looks a little less ugly.