如何设置CSS悬停到SVG地图

时间:2017-12-12 01:13:31

标签: css d3.js svg

我使用这个例子:

MDN reference

如何向县添加悬停?我试过了:

book1 = {
"author" :"A A",
"book" : {
    "series" : "19 A, 19 B, 19 C",
    "year" : "1990, 1991, 1992"
}}


book2 = {
"author" :"B B",
"book" : {
    "series" : "20 A, 20 B, 19 C",
    "year" : "1995, 1995, 1992"
} }
book3 = {
"author" :"C C",
"book" : {
    "series" : "19 A, 19 B, 19 C",
    "year" : "1990, 1991, 1992"
} }

和其他几个人。没运气。 感谢。

1 个答案:

答案 0 :(得分:2)

两个问题:

  1. counties<g>元素的类,而不是路径。因此,首先为每个路径设置一个类(如county);
  2. 这是您的主要问题:D3代码中的路径有style(),因此是后续规则。因此,如果您希望CSS规则覆盖后续规则,请使用!important

    .county:hover {
        fill: red !important;
    }
    
  3. 或者,也可以在style()的代码中更改attr()

    不要使用path:hover,因为州也有路径。此外,HTML和SVG中都没有d元素(问题中为path d:hover)。 d是路径的属性。

    以下是包含这两项更改的更新bl.ocks:https://bl.ocks.org/anonymous/9ebef1b8e2a11bd170c50bb4a3440628/8923484fd3715aa474f1eb31184d11da863e24dc