xml с xsl стилем не отображается в браузере Google Chrome
У меня есть 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 файла открывается пустая страница в гугле.
Почему так и как исправить?
Ответы (1 шт):
Я нашёл причину ошибки. Это всё меры защиты хрома. Он не позволяет открыть таблицу стилей из xml. В разных браузерах это то работает, то - нет.
Вот как сделать что бы работало в хроме:
You can do this locally using Chrome's command line flags.
The specific flag is --allow-file-access-from-files
On OS X: from Terminal.app run /Applications/Google\ Chrome.app/contents/MacOS/Google\ Chrome --allow-file-access-from-files
On Windows: from the command prompt run %LOCALAPPDATA%\Google\Chrome\Application\chrome.exe --allow-file-access-from-files
Note: You will probably have to quit Chrome if it is currently running otherwise Ch
Ссылка на обсуждение: https://stackoverflow.com/questions/3828898/can-chrome-be-made-to-perform-an-xsl-transform-on-a-local-file
