XSL игнорирует мои пробелы даже с тегом
Я делаю заголовок в моем коде XSL, который включает в себя несколько полей информации, т. е. "имя: Боб Дата рождения: 1 января 1900 года" и т. д. Я вложил их в такие теги как:
<xsl:text> Gender: Male </xsl:text>
но на странице пробелы вокруг Gender / Male игнорируются. Я что-то упускаю?
спасибо заранее.
5 ответов
если вы хотите вывести текстовый файл, вы должны указать <xsl:output method="text"/>
как дитя <xsl:stylesheet>
элемент.
при обработке вывода Как HTML парсер может упаковать ваши пробелы, если вывод HTML с неразрывными пробелами-это то, что вы хотите, вы можете использовать  
неразрывный космический объект (обратите внимание, что
может не работать, так как это не XML-объект, если вы не объявите его самостоятельно).
это не строгий вопрос XSLT, так как XSLT не съедает ваше пустое пространство. Эта трансформация
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<foo>
<xsl:text> Gender: Male </xsl:text>
</foo>
</xsl:template>
</xsl:stylesheet>
дает
<?xml version="1.0" encoding="UTF-8"?>
<foo> Gender: Male </foo>
вы используете HTML в качестве вывода? Затем используйте non breaking space для пробелов.
просто использовать
 Gender: Male 
Он представляет пробелы в xsl, как
Gender:Male
в html
вам нужно добавить
вместо пробелов. Чтобы получить более 1 места
<xsl:text><![CDATA[ Gender: Male ]]></xsl:text>