0

我知道已经问了很多继承问题,但是每个案例都是独一无二的,我在这个问题上遇到了麻烦。

我有一些 h2 元素需要对其具有独特的样式,但它们继续从先前定义的 h2 元素继承属性。

我尝试给他们一个独特的类,我尝试通过 JS 和 Jquery 定义 css 属性,但没有任何效果。

这是我正在谈论的一个例子:

<div class="parent">
    <h2>Original H2</h2>
    <div class="child">
        <h2>New H2</h2>
    </div>
</div>
.parent h2 {
    font-weight:bold;
    color:red;
}

.child h2 {
     font-weight:normal;
     color:green;
}

即使给孩子的 h2 标签一个独特的课程,我也无处可去。

<div class="parent">
    <h2>Original H2</h2>
    <div class="child">
        <h2 class="newh2class">New H2</h2>
    </div>
</div>
.parent h2 {
    font-weight:bold;
    color:red;
}

.child h2.newh2class {
     font-weight:normal;
     color:green;
}

<!--or-->

h2.newh2class {
     font-weight:normal;
     color:green;    
}

任何人都可以帮忙吗?

4

3 回答 3

2

你需要使用 !important 值来做到这一点。

h2.newh2class {
    font-weight:normal;
    color:green !important;    
}
于 2013-07-25T18:10:51.963 回答
0

你的 CSS 应该是这样的

.parent > h2 {
     font-weight:bold;
     color:red;
}

.child h2 {
      font-weight:normal;
      color:green;
}

在这里查看http://jsfiddle.net/yNFUd/

于 2013-07-25T18:02:56.293 回答
0

您的问题是 CSS,因为您是如何引用元素的。阅读CSS 中的堆叠和优先级

http://jsfiddle.net/feitla/SmUGm/2/

.parent > h2 {
     font-weight:bold;
     color:red;
}

.parent .child h2 {
      color:blue;    
}

.child > h2 {
      font-weight:normal;
      color:green; 
} 

更改顺序以及它们的调用方式将影响它们的继承和计算方式。

于 2013-07-25T18:04:21.610 回答