使用集成的CSS创建XML& DTD

时间:2012-03-05 09:51:49

标签: html css xml xhtml dtd

我想要一个带有集成DTD和CSS样式的xml文件的简短代码示例。

全部在一个文件中。

一个元素就足够了。

P.s。:我是xml新手,无法在一个文件中找到xml和css的示例。

此致

Ps。:我需要在xml文件中使用这样的css函数:

element {
  position:relative;
  display:block;
  width:600px;
  background-color:#999999;
  color:#FFFFFF;
  font-family:Tahoma,Arial;
  font-size:40px;
  padding:15px;
}

2 个答案:

答案 0 :(得分:2)

<?xml version="1.0" standalone="yes" ?>
<!DOCTYPE demo [
<!ELEMENT demo (style, body)>
<!ELEMENT style (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<demo xmlns="http://www.w3.org/1999/xhtml">
<style>body { color: red }</style>
<body>Hello world</body>
</demo>

这有点诡计,因为xmlns属性建议对标记进行HTML解释,使浏览器将style元素识别为包含CSS样式表。更常见的是,您将使用独立于HTML的XML工具。这意味着样式表将位于外部文件中,例如mystyle.css,您可以只编写

<?xml version="1.0" standalone="yes" ?>
<?xml-stylesheet type="text/css" href="mystyle.css"?>
<!DOCTYPE demo [
<!ELEMENT demo (body)>
<!ELEMENT body (#PCDATA)>
]>
<demo>
<body>Hello world</body>
</demo>

答案 1 :(得分:2)

这是编辑过的问题的答案。答案基本上是前一个答案的应用,只是替换了特定的样式表和元素名称,但在这里我还说明了如何使用data: URL来嵌入外部样式表。 (我认为这没有多大意义,但它解决了这个问题,也许有一个特定的理由要求单文件解决方案。)

<?xml version="1.0" standalone="yes" ?>
<?xml-stylesheet type="text/css" href=
"data:text/css,element{position:relative;display:block;width:600px;background-color:%23999999;color:%23FFFFFF;font-family:Tahoma,Arial;font-size:40px;padding:15px;}"
?>
<!DOCTYPE demo [
<!ELEMENT demo (element)>
<!ELEMENT element (#PCDATA)>
]>
<demo>
<element>Hello world</element>
</demo>

注意:在data:网址中,“#”字符(U + 0023)已被%编码为%23