如何覆盖来自js的内联css

时间:2013-01-08 07:10:52

标签: jquery html css

<div class="ui-slider-range ui-widget-header" style="left: 16.67824878387769%; width: 70.8825573314802%; "><p>4:00am  9:00pm</p></div>

整个div正在通过jquery。不幸的是我无法访问js。我需要使用css删除左边和宽度,是否可能?

5 个答案:

答案 0 :(得分:3)

如果您只能访问css文件,请使用!important

.ui-slider-range, 
.ui-widget-header {
    width: 100px !imporant;
    left: 0 !important;
}

答案 1 :(得分:3)

我想知道为什么你需要覆盖jqueryUI小部件内部部分的样式?您需要覆盖它的小部件布局出了什么问题?

注意:如果您正在尝试更改滑块小部件的实际值,则更改CSS不是这样做的方法 - 是的,此处给出的其他答案将导致元素删除其宽度和左侧属性,但它不会改变小部件的滑块标记值,一旦用户再次触摸小部件,它就会重新出现。

要明确:你要做的就是以一种根本不起作用的方式破解小部件。

如果要将窗口小部件设置为将滑块设置为零,则需要通过Javascript而不是CSS来完成。请参阅jQueryUI手册 - http://api.jqueryui.com/slider/

我怀疑你需要这样的东西:

 $(".selector").slider( "values", 0, 0 );
 $(".selector").slider( "values", 1, 0 );

其中'.selector'是包含滑块的主元素的引用(不是jqueryUI生成的小部件各个位的选择器)。

我希望有所帮助。

答案 2 :(得分:2)

您可以使用jQuery函数css来更改css属性。

$(function(){
     $('.ui-slider-range.ui-widget-header').css('left', '');
     $('.ui-slider-range.ui-widget-header').css('width', '');
});

如果您仍然无法访问js,则可以添加脚本来更改已生成的html元素。

答案 3 :(得分:2)

或者你可以尝试添加!在你的css声明中很重要。 例如。宽度:100%!重要;

答案 4 :(得分:2)

使用此!important

.yourCssClass{
    height:0px !important;
 }

小提琴:http://jsfiddle.net/TPL3f/