如何将父样式覆盖为元素

时间:2011-09-26 18:53:43

标签: css css3 css-selectors

<div class="jqueryslidemenu">
<ul>
<li  class="menuitem">TEST1</li>
<li  class="navOFFTDDisabled" id="TEST2">TEST2</li>
<li  class="navOFFTDDisabled" id="TEST3">TEST3</li>
<li  class="navOFFTDDisabled" id="TEST4">TEST4</li>
</ul>
</div>


CSS FILE 
.jqueryslidemenu ul li {
display: block;
background: #FFCC00; 
color: white;
padding: 4px 12px 6px 5px;
border-right: 1px solid #778;
color: #2d2b2b;
text-decoration: none;
font-weight: bold;
cursor: hand;
}

.navOFFTDDisabled{
//Aplly Style 
}

我不能将class =“navOFFTDDisabled”应用于每个(li)项目,因为“jqueryslidemenu”会覆盖navOFFTDDisabled样式。如何应用这两种样式

2 个答案:

答案 0 :(得分:4)

让它更好地匹配,

.jqueryslidemenu ul li.navOFFTDDisabled{
//I'm more important neener neener.
}

为了更有用,你可以实际计算哪个选择器具有优先权,如the specification

中所述

答案 1 :(得分:0)

您有三种可能来覆盖选择器:

  1. 选择器的顺序:样式表中向下的选择器会覆盖更靠前的选择器

  2. 选择器指定:http://www.w3.org/TR/CSS2/cascade.htmlhttp://www.molly.com/2005/10/06/css2-and-css21-specificity-clarified/

    基本上取决于您在选择器中有多少标签,类和ID。类比标签添加更多的权重,并且id比类添加更多权重

  3. 您可以做的最后一件事是在样式规则中添加!important,它会覆盖任何其他选择器。为了更正,您仍然可以有更多!important规则,而选择器规范规则再次发挥作用。例如。 .klass{color:red !important}

相关问题