如何将 HTML 语义分配给我的 XML 元素以使它们在我的 Web 浏览器中呈现?
我有一个如下所示的 xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<todo>
<list><item>first</item><item>second</item></list>
<list><item>first</item><item>second</item></list>
</todo>
现在我想在浏览器中查看该文件。我希望将
元素呈现为
- html 元素。我知道我可以使用 xslt 将 xml 转换为 html 文档。但是:有没有办法直接将 html 语义分配给列表的元素,例如使用 css(类似于
list{display:ul}
)或 dtd?
html 元素,将
元素呈现为 <代码>I have an xml file like this:
<?xml version="1.0" encoding="UTF-8"?>
<todo>
<list><item>first</item><item>second</item></list>
<list><item>first</item><item>second</item></list>
</todo>
Now I want to view the file in a browser. I want to have the <list>
element rendered like a <ul>
html-element, the <item>
elements like <li>
html-elements. i know that I can use xslt to transform the xml into an html document. but: is there a way to directly assign the html semantics to the elements of my list, e.g. with css (something like list{display:ul}
) or a dtd?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,这是可能的。
请参阅带有 XML 的 W3C 网站样式表。
您可以使用 CSS 为每个 XML 元素声明浏览器应如何显示它。但您必须比 HTML 更详细,因为对于纯 XML 来说,没有预定义的样式。
在 XML 标头中添加对 CSS 文件的引用:
这是一个 CSS 文件示例 (todo.css):
对于每个元素,您可以定义
display
样式 (block
,内联
、无
、列表项
)。对于
display: list-item
您还可以使用样式list-style-image: url(bullet.gif)
来装饰项目符号图标图形list-style -image
,值为inside
或outside
list-style-type
,值为circle
,圆盘
、方形
、无
Yes, this is possible.
See W3C-Website Style Sheets with XML.
You can use CSS to declare for each XML element how the browser should display it. But you have to be more verbose than in HTML, because for plain XML there are no predefined styles.
In the XML header add a reference to your CSS file:
Here is an example CSS file (todo.css):
For each element you can define the
display
style (block
,inline
,none
,list-item
).For
display: list-item
you can additionally use the styleslist-style-image: url(bullet.gif)
to decalare a bullet icon graphiclist-style-image
with valuesinside
oroutside
list-style-type
with valuescircle
,disc
,square
,none
不,XML 不是 HTML。如果要将 XML 显示为 HTML,则需要使用 XSLT 对其进行转换。
No, XML is not HTML. If you want to display your XML as HTML, you will need to transform it using XSLT.
您无法将 XML 显示为 HTML。使用一些转换实用程序 (XSLT)。
You cannot display XML as HTML. Use some transformation utilite (XSLT).