CSS特异性

djr*_*eed 1 css stylesheet

假设这个加价:

<html class="fr">
<head>
</head>
<body>
 <div class="class1">
 </div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这会是:

.fr .class1 {
  background-color: blue;
}
Run Code Online (Sandbox Code Playgroud)

优先于:

.class1 {
  background-color: red;
};
Run Code Online (Sandbox Code Playgroud)

编辑:

对于那些想知道的人,是的,我曾经尝试过:)我没有在这里解释完整的问题并在这篇文章之后发现了问题.

基本上,我在同一个样式表中有两种样式:

.fr .class1 {
  font-size: 12px;
}

.class1 {
  font-size: 12px;
  line-height: 18px;
  height: 80px;
}
Run Code Online (Sandbox Code Playgroud)

虽然在技术上.fr .class1需要precendence.class1,这并不意味着该元素替换所有的.class1的样式.fr .class1的风格.相反,它.fr .class1首先考虑样式.class1.这是"显而易见的",但这就是我遇到困难的原因.

我的目标是使用.fr .class1优先级删除样式.class1.为了做到这一点,我意识到我需要将值设置为0或中性值:

例)

.fr .class1 {
  font-size: 12px;
  line-height: 0;
  height: auto;
}
Run Code Online (Sandbox Code Playgroud)

否则,它将级联.class1并填充这些样式.

Dou*_*las 7

是的,因为.fr .class1引用了两个类名,.class1只引用了一个,第一个更具体.CSS标准中的规则在这里.