覆盖css类

时间:2011-06-20 13:39:13

标签: css css-selectors

我有一个css课暂停。这适用于各种页面。只有一节 标记没有 margin-left:42px; ,所以我想让它 0px 。我不想 使用一个新类因为我使用jQuery动态地应用这个类 某些条件。

所以,我需要覆盖该类以从标记中生成 margin-left:0px;

CSS

.pause a{
         background-image:url(../img/pink_pause.png);float:left;
         height:26px;width:96px; margin-left:42px; margin-top:6px;
         }   

标记

<td  class="pause  bid_button_logout bidder_name">
<a href="login"></a>
</td>  

如何通过任何其他类别或任何其他方式中和保证金?

6 个答案:

答案 0 :(得分:1)

如果无法定义其他样式,请在不希望margin-left应用的元素上使用内联样式。内联样式比其他地方定义的样式更具体,因此它应该优先:

<a href="login" style="margin-left:0">

答案 1 :(得分:1)

您可以将.pause拆分为两个css类,其中一个只定义额外的边距,而不是将该类应用于那些不需要边距的类。

或者在元素上设置样式属性,如下所示:style="margin-left: 0;",这将覆盖css值。

或者您可以像这样创建名为“.noMargin”的anoter类:

.noMargin{ margin-left: 0 !important; } 
/* important overrides other class values 
   even if the cascading would not */

并将该类应用于您不希望获得额外保证金的类。

答案 2 :(得分:0)

如果您想使用内联样式:

<a href="login" style="margin-left:0px;"></a>

或创建新声明:

.bid_button_logout a{
    margin-left: 0px; 
}

但这必须在 .pause a之后

答案 3 :(得分:0)

或者,如果您确实需要切换课程,请参阅toggleClass

答案 4 :(得分:0)

尝试重要的黑客攻击:

margin-left: 0px !important;

答案 5 :(得分:0)

如果bid_button_logoutbidder_name对于您不需要保证金的情况是唯一的,请将margin-left:0px;添加到其中任何一个类中(但要确保它们位于.pause a之后您的css文件。如果没有,请使用条件jQuery添加内联样式,这将绕过原始的左边距样式。