使用 XSLT 创建条件注释?
I want to create conditional comments in XSLT.
But when I use this:
<!-- [If IE7] [endif] -->
in an <xsl:comment>
, XSLT removes it from the output when it is rendered.
Is there any way to create conditional comments in XSLT?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
只需使用
标签并将您的评论包含在该标签内即可。例如:
Taming Your Multiple IE Standalones 是关于这个主题的一篇很棒的文章。
Simply use an
<xsl:comment>
tag and include your comment within the tag.For example:
Taming Your Multiple IE Standalones is a great article on this subject.
上述解决方案假设条件注释内的内容不包含任何 XSLT 参数。 在下面的示例中,我们有一个参数
$DATA_ROOT_PATH
,应该对其进行处理,以便为我们提供 CSS 文件的正确位置。 在这种情况下,
不适合。 我们必须使用
并禁用输出转义。仅当我们使用 IE7 时,此处的示例才会包含 CSS 文件。
如果
$DATA_ROOT_PATH
= /example,代码示例将生成如下输出:The above solution assumes that the content inside the conditional comment does not contain any XSLT parameters. In the example below we're having a parameter
$DATA_ROOT_PATH
that should be processed to give us the correct location of a CSS file. In this case<xsl:comment/>
is not suitable. We must use<xsl:text/>
and disable the output escaping.The example here will include the CSS file only if we're using IE7.
The code example would generate output like so if
$DATA_ROOT_PATH
= /example:这是我能够应用 ie 样式表的唯一方法:
我必须确保我的文本和 xsl:comment 开始/结束标记之间没有空格
This was the only way I was able to get my ie stylesheet to be applied:
I had to make sure there is no space between my text and the xsl:comment opening/closing tags