Css 如何将HTML语义分配给XML元素,以便在web浏览器中呈现它们?
我有这样一个xml文件:Css 如何将HTML语义分配给XML元素,以便在web浏览器中呈现它们?,css,xml,dtd,Css,Xml,Dtd,我有这样一个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&g
<?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元素,将
元素呈现为
html元素。我知道我可以使用xslt将xml转换为html文档。但是:有没有一种方法可以直接将html语义分配给列表中的元素,例如使用css(类似于list{display:ul}
)或dtd?不,XML不是html。如果要将XML显示为HTML,则需要使用XSLT对其进行转换。您不能将XML显示为HTML。使用一些转换实用程序(XSLT)。是的,这是可能的
看
您可以使用CSS为每个XML元素声明浏览器应该如何显示它。但是您必须比HTML更详细,因为对于纯XML没有预定义的样式
在XML标头中添加对CSS文件的引用:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="todo.css"?>
<todo>
<list><item>first</item><item>second</item></list>
<list><item>first</item><item>second</item></list>
</todo>
对于每个元素,您可以定义显示
样式(块
,内联
,无
,列表项
)
对于显示:列表项
,您还可以使用样式
用于标记项目符号图标图形列表样式图像:url(bullet.gif)
,带有值列表样式图像
或内部
外部
带有值的列表样式类型
,圆圈
,圆盘
,正方形
无
。它不会更改浏览器渲染它的方式。浏览器将XML显示为XML,将HTML显示为HTML。如果您希望它显示为HTML,则需要以HTML格式发送到浏览器。这是我希望的。是否也有表单元素的显示样式,如或?或者查找?在此处查找所有可能的显示值的列表:表有选项,但似乎无法呈现表单元素。为此,最好使用XSLT之类的工具。
todo {
display: block;
}
list {
display: block;
padding-left: 5mm;
margin-top: 1cm;
}
item {
display: list-item;
list-style-type: circle;
}