5

有谁知道如何xlink:href使用 CSS 按属性选择 XML 元素?

有关用法,请参见此处,但它没有说明如何使用 CSS 选择它。

<book title="XQuery Kick Start">
  <description
    xlink:type="simple"
    xlink:href="http://book.com/images/XQuery.gif"
    xlink:show="new"> ... </description>
</book>
4

3 回答 3

8

使用CSS 属性选择器,您需要通过前导反斜杠转义冒号 ,如下所示::\

description[xlink\:href="http://book.com/images/HPotter.gif"] {
  background-color: gold;
}
<?xml version="1.0" encoding="UTF-8"?>

<bookstore xmlns:xlink="http://www.w3.org/1999/xlink">
  <book title="Harry Potter">
    <description
      xlink:type="simple"
      xlink:href="http://book.com/images/HPotter.gif"
      xlink:show="new"> ... </description>
  </book>

  <book title="XQuery Kick Start">
    <description
      xlink:type="simple"
      xlink:href="http://book.com/images/XQuery.gif"
      xlink:show="new"> ... </description>
  </book>
</bookstore>

工作演示

于 2014-02-22T06:40:40.927 回答
3

使用反斜杠转义冒号的唯一方法可能是,如果您将文档作为 XML 接收,但将其作为 HTML 输出,则将其从所有 XML 语义中剥离。

如果您直接使用 CSS 设置 XML 文档的样式,正确的方法是根据XLink 规范在样式表顶部声明xlink命名空间,如下所示:

@namespace xlink 'http://www.w3.org/1999/xlink';

然后使用带有命名空间前缀的属性选择器来定位您的元素:

description[xlink|href="http://book.com/images/XQuery.gif"] {
    /* Styles */
}
于 2014-02-23T12:10:07.077 回答
-1

像对待普通的 html 一样对待它。点击下面的演示链接。

演示

XML

<?xml version="1.0" encoding="UTF-8"?>

<homepages xmlns:xlink="http://www.w3.org/1999/xlink">

<homepage xlink:type="simple"
xlink:href="http://www.w3schools.com">Visit W3Schools</homepage>

<homepage xlink:type="simple"
xlink:href="http://www.w3.org">Visit W3C</homepage>

</homepages>

CSS

homepage{
    color:red;
}
于 2014-02-22T06:38:25.470 回答