【问题标题】:Can i make an XSLT transformation directly in html page?我可以直接在 html 页面中进行 XSLT 转换吗?
【发布时间】:2010-10-07 15:25:34
【问题描述】:

我知道命名空间是用来描述的,比如 doctype,但是有没有一种方法或技巧可以使用 xsd 将内部命名空间 html 转换为 xsl ?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"  xmlns:sample="sample-uri">
    <head >
        <title>Enter the title of your XHTML document here</title>
    </head>
    <body >
        <p sample:node="retrieve-transformation">Enter the body text of your XHTML document here</p>

</html>

换句话说,我想知道我是否可以在不使用 javascript 的情况下将 xsl 转换为 xhtml 页面。

【问题讨论】:

  • 从您的帖子中不清楚您的问题是什么以及您要做什么。你可以再详细一点吗?想举一个你的输入和预期输出文档的例子吗?
  • 如果我没看错,@belaz 希望在 HTML 文档的中间执行 XSL 转换。
  • 那你为什么不一开始就写这个;)
  • 我想听听一个特定的命名空间前缀技巧;D,但我会接受你提供的任何信息。

标签: html xml xhtml xslt doctype


【解决方案1】:

在 XHTML(即application/xhtml+xml——而不是text/html!)中,您可以使用xml-stylesheet processing instruction 触发没有 JavaScript 的 XSLT 程序。

【讨论】:

    【解决方案2】:

    现代浏览器支持开箱即用的 XSLT。

    看看eu.wowarmory.com - 他们广泛使用它。如果服务器检测到不支持 XSLT 的用户代理,它会在服务器端呈现,并在那里呈现非常冗长的 HTML 并发送到浏览器。

    如果您计划提供类似于网站的 XML Web 服务,这将是一个很好的抽象。

    【讨论】:

      【解决方案3】:

      不,您不能在不使用某种脚本技术的情况下执行 XSL 转换。我建议您在服务器端进行以节省客户端的麻烦;并避免由于某种原因转换在客户端上没有成功或运行缓慢时出现的各种问题。

      【讨论】:

        猜你喜欢
        • 2018-04-06
        • 2018-01-11
        • 1970-01-01
        • 2019-06-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-09
        • 2017-06-19
        相关资源
        最近更新 更多