sinat_26662021 2016-03-27 13:24 采纳率: 50%
浏览 1517
已采纳

关于用jquery 修改CSS

有CSS代码如下

path[data-classbreak="classbreak0"] {
    stroke: rgb(255, 245, 220); 
            stroke-width: 1pt; 
        stroke-opacity: 0.35; 
            fill:   #00008B;
            fill-opacity: 0.8;
        }

        path[data-classbreak="classbreak1"] {
        stroke: rgb(255 ,140 ,0); 
        stroke-width: 1pt; 
        stroke-opacity: 0.35; 
            fill: #1E90FF;
            fill-opacity: 0.8;
        }

        path[data-classbreak="classbreak3"] {
        stroke: rgb(255, 245, 220); 
            stroke-width: 1pt; 
        stroke-opacity: 0.35; 
            fill:   #00008B;
            fill-opacity: 0.8;
        }

            现在需要在一个回调函数中用jquery动态地修改特定类别的属性值,但是不知道如何选中该类别,比如如何修改 path[data-classbreak="classbreak3"]中的fill属性?
            另外,这个CSS复制于其它地方,求问 path[data-classbreak="classbreak3"]这种写法中,data-classbreak应该是个属性名,classbreak3是个属性值,那么外面的path[]是什么意思?   谢谢!
  • 写回答

2条回答 默认 最新

  • java仔 2016-03-27 13:48
    关注

    其实在所有样式中,能够作用于一个元素上的样式的相同属性,最终只有排在最后的一个有效。而在没有规定重要级别的情况下,
    内联样式将是最终作用的,就是传说中写在元素style属性内部的css样式。
    你可以尝试下面的方案,通过jquery去获取相应的元素,从而改变它的指定属性,如你所说的fill.

     $(".class名称[元素属性='属性值']").css("样式属性", "样式属性值");
     举例:
     $(".path[data-classbreak='classbreak3']").css("fill", "#CCC");
    

    理解起来也很简单,包含有path class 并且元素属性data-classbreak值为classbreak3的元素。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大