当前位置: 首页 > 知识库问答 >
问题:

使用XSLT设置内联XML标记的样式

姬熙云
2023-03-14

这是一个类似于使用XSLT设置内联文本和嵌套标记样式的问题,但我无法对其进行注释以获得澄清,因此我将在这里详细说明我的具体场景。我基本上有一个具有以下结构的XML文档:

<book>
    <chapter>
        <para>This is some text about <place>New York</place></para>
    </chapter>
</book>

我正在使用XSLT从XML文件中输出XHTML,并且我希望能够在上面示例中的place标记中的内容周围放置span标记或其他东西。其目的是使我可以用CSS为这些文本段设置样式。按照我上面提到的示例,我添加了以下内容:

<xsl:template match="book/chapter/para/place">
    <span class="place">
        <xsl:apply-templates/>
    </span>
</xsl:template>

当我在浏览器中加载XML文档时,我得到错误:加载样式表错误:解析XSLT样式表失败。(在我添加此部分之前,样式表加载正常)

我假设我对xsl:apply模板应该如何使用缺乏一些基本的了解。如果有人能为我指出解决这个问题的方向,我将不胜感激。

谢谢!

共有1个答案

周楷
2023-03-14

比赛:

<xsl:template match="book/chapter/para/">

将模板应用于place元素的所有子元素,而不是place本身。

使用选择应用模板中:

<xsl:template match="/">
  <xsl:apply-templates select="book/chapter/para/place"/>
</xsl:template>

在没有选择属性的情况下,xsl:应用模板指令处理当前节点的所有子节点,包括文本节点。

选择属性可用于处理由表达式选择的节点,而不是处理所有子节点。选择属性的值是一个表达式。表达式的计算结果必须为节点集。

工具书类

  • XSLT 1.0规范

 类似资料:
  • 问题内容: 我正在尝试访问静态图像以在React 的内联属性中使用。不幸的是,我已经干了如何做到这一点。 通常,我认为您只是这样做如下: 这适用于标签。有人可以解释两者之间的区别吗? 例: 效果很好。 谢谢! 问题答案: backgroundImage属性内的花括号错误。 可能您正在将webpack与图像文件加载器一起使用,因此Background应该已经是一个String了: 您还可以使用以下E

  • 我正在尝试访问一个静态图像,以便在React中的内联属性中使用。不幸的是,我已经不知道该怎么做了。 一般我以为你刚才是这样做的: 这适用于标记。有人能解释一下这两者的区别吗? 示例: 工作正常。 谢谢!

  • 问题内容: 我正在尝试使用带有剑道分离器的Reactjs。拆分器的样式属性如下 使用Reactjs,如果我正确理解了所有内容,则可以使用内联样式来实现 但是,我也使用Dustin Getz jsxutil尝试将内容拆分成更多部分并具有独立的html片段。到目前为止,我有以下html片段(splitter.html) 和splitter.js组件,该组件按如下方式引用此html 现在,当我运行此命令

  • Sphinx 使用文本解释角色在文档中插入语义标签. 这样写 :rolename:`content`. Note 默认角色 (`content`) 并不特别. 可使用任何其他有效的名字来代替; 使用 :confval:`default_role` 设置. 由主域添加的角色请参考 Sphinx Domains . 交叉索引的语法 多数文本解释角色都会产生交叉索引. 需要写一个 :role:`targ

  • 问题内容: 我想设置某些元素的样式属性,但是语法不正确。谁能建议我错了? 更新:对于任何查看此内容的人,请查看注释,这不是有效的代码。 问题答案: https://facebook.github.io/react/tips/inline- styles.html 您不需要引号。