xsl:strip-space和xsl:preserve-space用于控制XSLT中纯空白文本节点的保留或删除:前者删除指定元素内纯空白节点,后者强制保留;推荐先全局strip-space再针对性preserve-space。

xsl:strip-space 和 xsl:preserve-space 是 XSLT 中控制空白字符(空格、制表符、换行符)如何被处理的两个核心指令。它们不改变 XML 内容本身,而是告诉 XSLT 处理器:对哪些元素里的“纯空白文本节点”,该删还是该留。
XML 源文件中常有为可读性添加的缩进和换行,比如:
<book> <title>XML入门</title> <author>张三</author> </book>
这些换行和空格在解析时会生成“纯空白文本节点”。默认情况下,XSLT 会保留全部——但多数 HTML 输出或结构化数据转换并不需要它们,反而会导致多余空行、错位或 XPath 匹配失败。
它声明哪些元素内的纯空白节点应被直接丢弃。适用于数据型内容,如数值、ID、日期等:
<strip-space elements="price country year"></strip-space>
<title> Hello </title> 中的前后空格它覆盖 strip-space 的规则,强制保留指定元素中的纯空白。适用于需原样呈现的场景:
<preserve-space elements="code pre poem"></preserve-space>
别依赖默认行为——看似省事,实则容易引发“幽灵空白”或意外截断。推荐做法是:
<strip-space elements="*"></strip-space> 清除所有默认空白(白名单策略起点)<preserve-space elements="code pre textarea"></preserve-space> 精准放行需要格式的元素elements="* title"),不同处理器解析可能不一致基本上就这些。不复杂但容易忽略,一加一减之间,输出就干净了。
以上就是XSLT的xsl:strip-space和xsl:preserve-space有什么用的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号