理解级联和css初始化

时间:2017-08-20 20:03:17

标签: html css css3

所以我html css

.paragraphs {
  color: orange;
  background-color: gray;
}

p.first {
  color: inherit;
  background-color: inherit;
}

p.second {
  color: initial;
  background-color: initial;
}
<div class="paragraphs">
  <p class="first">Paragraph 1</p>
  <p class="second">Paragraph 2</p>
</div>

两者都有background-color grayp.first的{​​{1}} colororange的{​​{1}} p.second } color

为什么black不会使用background-color返回默认状态,但background-color: initial;会这样做?

3 个答案:

答案 0 :(得分:1)

initial标记的background-color ptransparentnone

在检查元素时,您还可以看到第二个p标记的计算样式。在那里,您会看到background-color实际上的值rgba(0, 0, 0, 0)与透明黑色相同。

有一篇好文章on quirksmode.org about inherit, initial and unset values

答案 1 :(得分:0)

您定义到div.paragraphs的CSS不会由p.firstp.second继承。如果你的CSS是这样的话:

p {
  color: orange;
  background-color: gray;
}

p.first {
  color: inherit;
  background-color: inherit;
}

p.second {
  color: initial;
  background-color: initial;
}

现在所有段落(<p>标签)都会继承。类firstsecond的段落将使用给定的值覆盖这些值。

答案 2 :(得分:0)

如果您将override func viewDidLoad() { super.viewDidLoad() //Your code... view = mMap //Remove this line mMap.camera = GMSCameraPosition.camera(withLatitude: 54.9044200, longitude: 52.3154000, zoom: 15.0) //Add this line let camera = GMSCameraPosition.camera(withLatitude: myLat, longitude: myLon, zoom: 15.0) //Remove this line let mMap = GMSMapView.map(withFrame: CGRect.zero, camera: camera) //Remove this line //Your code... } 元素放在父母之外,您可以轻松了解正在发生的事情。的 DEMO

p表示与父母相同。 inherit表示背景为透明且颜色为黑色的默认值。