8.6 控制空白的处理方式

XSLT提供了两个控制空白处理方式的元素:

alt <preserve-space…/>:保留空白。

alt <strip-space…/>:删除空白。

这两个元素都只能作为根元素(<stylesheet…/>或<transform…/>)的子元素使用,使用时可以指定如下属性:

alt elements:该属性是一个token类型的属性,它可以接受多个元素名,用于指定保留或删除这些元素内容里的空白。

XSLT处理器默认保留XML文档里各元素所包含的空白,这与XML文档对空白的处理方式是一致的。如果希望XSLT去除部分元素内容里所包含的空白,可以选择使用<strip-space…/>元素,如下所示:

alt

elements属性值支持使用通配符,如以下代码可去除所有元素里的空白:

alt

正常情况下,由于XSLT默认会保留所有元素里包含的空白,因此没必要使用<preserve-space…/>元素强制保留空白,但如果我们使用了上面所示的<strip-space…/>元素来去除所有元素中的空白,但又希望XSLT处理器保留部分元素的空白,就需要使用<preserve-space…/>元素了,如下所示:

alt