我有xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='style1.xsl'?>
<breakfast_menu>
<food>
<name>Бельгийские Вафли</name>
<price>$5.95</price>
<description>
две известных Бельгийских Вафли с обилием настоящего кленового сиропа
</description>
<calories>650</calories>
</food>
<food>
<name>cake</name>
<price>$7.95</price>
<description>
легкие Бельгийские вафли с земляникой, покрытые взбитыми сливками
</description>
<calories>900</calories>
</food>
<food>
<name>Бельгийские Вафли с Ягодами</name>
<price>$8.95</price>
<description>
легкие Бельгийские вафли с различными свежими ягодами, покрытые взбитыми сливками
</description>
<calories>900</calories>
</food>
<food>
<name>Французский Тост</name>
<price>$4.50</price>
<description>
толстые куски, сделанные из кусочков домашнего хлеба из опары
</description>
<calories>600</calories>
</food>
<food>
<name>Домашний Завтрак</name>
<price>$6.95</price>
<description>
пара яиц, бекон или колбаса, тост, и наши всегда популярные картофельные оладьи
</description>
<calories>950</calories>
</food>
</breakfast_menu>
和xsl 文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>Блюда</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Название</th>
<th>Цена</th>
<th>Описание</th>
<th>Калории</th>
</tr>
<xsl:for-each select="breakfast_menu/food">
<tr>
<td><xsl:value-of select="name"/></td>
<td><xsl:value-of select="price"/></td>
<td><xsl:value-of select="description"/></td>
<td><xsl:value-of select="calories"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
例如,如果使用该站点,我将 xml 转换为 html,那么一切正常。但是如果没有转换,当您打开 xml 文件时,会在 Google 中打开一个空白页面。
为什么会这样以及如何解决?
我找到了错误的原因。这些都是镀铬保护措施。它不允许从 xml 打开样式表。它要么在不同的浏览器中工作,要么不工作。
以下是如何使其在 chrome 中工作:
讨论链接:https ://stackoverflow.com/questions/3828898/can-chrome-be-made-to-perform-an-xsl-transform-on-a-local-file