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

XSLT表在输出中乱序

曾承弼
2023-03-14

我有这样的桌子:

我有如下XSLT模板匹配(删除了属性匹配,因为本例不需要它们):

<xsl:template match="colgroup">
    <tgroup>                    
        <xsl:apply-templates select="descendant::col | descendant::thead | descendant::tbody"/>
    </tgroup>
</xsl:template>

<xsl:template match="col">
    <colspec>         
        <xsl:apply-templates/>
    </colspec>
</xsl:template>

<xsl:template match="thead">
    <thead>                       
        <xsl:apply-templates />
    </thead>
</xsl:template>

<xsl:template match="tbody">
    <tbody>                      
        <xsl:apply-templates/>
    </tbody>
</xsl:template>

我得到的结果是:

THEAD和TBODY应该与COL元素处于同一级别的colgroup中,但我似乎无法让它配合。

共有1个答案

仉宸
2023-03-14

您正在生成HTML输出。在HTML中,colgroups只包含col元素,而不包含thead或tbody元素。输出程序正在为您修复HTML。

如果您不想发生这种情况,不要要求输出器生成超文本标记语言。

 类似资料:
  • 我使用的是saxon for xml到html的xslt转换,我需要两个输出文件,一个是基本html,一个是javascript文件,如果不支持js,它可以是文本文件。这是我的转换c#代码,也是xsl文档的一部分。我需要从转换后的xml输出一个html文件和一个带有脚本的javascript文件 这里是xsl文档的一部分

  • 问题内容: 我正在尝试获取一个示例,该示例使用XSLT 2.0来输出工作中的多个文件。 在Java 1.6上使用Saxon B 9.7.0.1,出现此错误: input.xml transform.xml 问题答案: URI中的字符20是“文档和设置”中的第一个空格。作为快速解决方案,请尝试将文件移动到没有空格的路径。(例如,“ C:\ test”或类似的代码。)我怀疑长期的解决方法是将XSLT更

  • 我们哪里做错了? 当我在saxon上使用xslt 2处理此xml时,他: 使用此样式表: 我得到这个输出: 但我想保留 它保留了 这真的有必要吗?难道没有更优雅的选择吗?如果不是,这背后的理由是什么?

  • 我已经升级了eclipse,现在控制台输出中的字符混杂在一起。它似乎不会随着输出的出现或滚动的移动而刷新。如何解决这个问题?什么也做不到,如果我移动鼠标,可能屏幕的某些部分会重新绘制,否则它们不会 Eclipse IDE for Java Developers版本:2019-06(4.12.0)构建id:20190614-1200 OS:Mac OS X,v.10.12.6,x86_64/coco

  • 我在Windows中的Git Bash终端可以与所有其他git bash命令一起工作,但是对于使用Git Bash为环境激活conda,输出都是胡言乱语。我找不到其他面临这个问题的人。为了回来,我必须杀死并启动一个新终端。这是Minicon da的新安装,我在以前的安装和不同的环境中也遇到了同样的问题。它可以与Native Anaconda Prompt一起工作,但是我喜欢在我的工作流程中使用Gi

  • 我有一个包含用户web浏览器信息的列表。该列表由PHP通过用户需求调查生成。输出如下所示:(示例): Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.1;Trident/4.0;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.30729;Media Center PC 6.0) 哪个是真正的web浏览器?根