如何强制类忽略样式设置

时间:2013-09-03 12:38:14

标签: html css jquery-mobile

我正在使用Jquery Mobile。当我创建例如select box的输入文本时,它 用一些HTML包装它。其中一行是:

<span class="ui-icon ui-icon-arrow-d ui-icon-shadow"></span>

在我们的项目中,我们对这些课程有很多重写,尤其是ui-icon

.ui-icon {
        background-size: 85px 700px !important;
}

所以我得到一个包含这些参数的页面,因此我的所有页面都变得混乱。

更改所有项目中的样式需要做很多工作,如何强制我的页面忽略当前类background-size的此样式(ui-icon)?

2 个答案:

答案 0 :(得分:3)

你不能强迫一个类忽略样式(不管怎样我都知道)。

我认为你拥有的唯一选择(使用jQuery)是覆盖background-size

$('.ui-icon').css('cssText', 'background-size: auto auto !important');

请注意,我绝不会建议像这样编码,如果你必须在 CSS &amp;中使用!important,那么你做错了很多。的 JAVASCRIPT

答案 1 :(得分:0)

CSS样式采用提交给它的最后一种样式,然后只能用重写覆盖,你的问题非常模糊,但你应该能够通过对元素上的样式进行硬编码来解决这个问题,

<span class="ui-icon ui-icon-arrow-d ui-icon-shadow" style="background-size: 5px 5px !important;"></span>

或者使用!Important元素覆盖整个类。为此,您必须在该页面的样式列表中创建最后调用的样式,例如在所述页面上创建类。

除此之外,你可以使用Javascript通过给Element一个id来设置该元素的样式,

 $('#txtBoxOverride').css('background', '5px 5px !important')