将元素显示指定为图像

时间:2015-09-08 09:06:11

标签: css xml

例如我有一个DTD

DTD:
<!ELEMENT tbl EMPTY>
<!ATTLIST tbl tableWidth CDATA "0">
<!ELEMENT MyImage EMPTY>
<!ATTLIST MyImage source CDATA "sample.png">

Valid XML:
<tbl tableWidth ="100" />
<MyImage source="image.png"/>

现在在元素tbl的CSS中,我可以将其指定为

tbl {
    display: table;
}

这意味着元素tbl应显示为表格。但是如果我们想将MyImage元素显示为图像,我们该怎么做呢? 图像应来自源属性。由于display css属性没有图像值。

1 个答案:

答案 0 :(得分:1)

在CSS中,图片为replaced element

  

其内容超出CSS格式模型范围的元素,例如图像,嵌入文档或小程序。

这意味着CSS没有定义如何呈现替换内容。它完全留给了用户代理。这就是没有DeletePolicy()值的原因。

如果只有browsers implemented CSS3's attr(),您可以通过执行此类操作(实际上会导致替换的伪元素)作弊:

display: image

但是因为到目前为止还没有浏览器实现它,所以你几乎被卡住了。 (从技术上讲,假定这样做的方法是为您的XML实现自定义用户代理,但我不确定大多数作者是否为此做好了准备。)