【发布时间】:2014-05-09 09:57:48
【问题描述】:
我了解 CSS 基础知识,但我总是遇到样式冲突的问题。考虑以下样式。
首先,我的样式表中的默认字体颜色是黑色。我希望将该颜色应用于所有图片标题 - 除非它们包含在具有 CoolL 或 CoolR 类的 div 中...
.CoolL .Caption, .CoolR .Caption { color: #900; }
现在酷系列中的所有字幕都有棕色文本。但是在某些情况下,我希望字幕具有黑色背景和白色文本,因此我创建了以下规则:
.Black { background: #000; color: #fff; }
现在考虑以下 HTML。 Class Caption 本身应该有黑色文本。但是,这是在具有类 CoolR 的 div 内,因此它显示棕色文本。但是我在最后一个 div 中添加了 Black 类,这应该将背景更改为黑色,将文本颜色更改为白色...
<div class="CoolR Plus Max300">
<div class="Shadow2">
<img src="">
<div class="Caption Black">Text</div>
</div>
</div>
其实背景是显示黑色的,但是文字颜色还是棕色的。
我总是遇到这些问题,而解决它们的唯一方法就是编写长而详细的样式,像这样......
.Black, .Caption .Black, .CoolR .Caption.Black, .EverythingElseThatCouldBeBlack .Black { background: #000; color: #fff; }
我错过了什么?谢谢。
【问题讨论】:
-
如果您将
.Black声明放在要覆盖的规则下,您提供的示例就可以正常工作。 jsfiddle.net/habTJ/1
标签: css