小编Fra*_*kie的帖子

您可以使用id和类名称css选择器在另一个命名空间中设置XHTML元素的样式吗?

我正在开发一个使用ubiquity-xforms的应用程序.以前我一直使用XHTML 1.0 doctype以text/html的形式提供这些页面.

如果我换的MIME类型为application/xhtml + xml,我会看到一个相当大的性能提升,因为JavaScript的可以使用的,而不是什么它现在做的(通过每一次整个DOM树慢慢迭代的get ____ NS()函数,它需要选择一个元素).

但是当我尝试这个时,我的一堆CSS停止了工作.我注意到,当我检查的元素,无论是在Firebug或WebKit每日Web检查,故障点是".classname"和在XForms命名空间的元素'#ID’CSS选择器.我还注意到,在列出的DOM属性中,这些元素缺少'id'和'className'属性.

我的问题是,有没有办法让UA将这些识别为类和ID?

我尝试过的事情无济于事:

  1. 在内联doctype的ATTLIST中将"id"属性指定为ID
  2. 尝试我可以使用的每种文档类型,或者根本没有文档类型
  3. 限定xhtml命名空间中的id和class name属性(即.xhtml:id)

这是一些示例xhtml.在Firefox 3.5或Safari 4/WebKit Nightly中不起作用

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:xhtml="http://www.w3.org/1999/xhtml"
  xmlns:xf="http://www.w3.org/2002/xforms">
<head>
    <style type="text/css">
    /* <![CDATA[ */
    #test {
        background-color: red;
    }
    .testing {
        color: blue;
    }
    /* ]]> */
    </style>
</head>
<body>
    <xf:group id="test" class="testing">Test</xf:group>
</body>
Run Code Online (Sandbox Code Playgroud)

html css xhtml namespaces xforms

5
推荐指数
1
解决办法
1687
查看次数

标签 统计

css ×1

html ×1

namespaces ×1

xforms ×1

xhtml ×1