我在div元素中有一个div元素。外部div具有color
和border-color
的样式属性。内部div继承它。
<html>
<head><style>#foo{color: red; border-color: green;}</style></head>
<body>
<div id="foo" style="border-width: 6; border-style: solid; padding: 10;">
<div style="border-width: 6; border-style: solid; height: 10;"></div>
</div>
</body>
</html>
当我在浏览器上渲染它时,外部div的边框呈现为绿色,正如预期的那样,但内部div的边框呈现红色,这对我来说意外。
当我查看Google Chrome开发人员的工具时,color
和border-color
属性对外部div都有效:
但对于继承属性的内部div,color
有效但border-color
无效,因此边框颜色变为红色,这是{{{{1}指定的颜色1}}属性:
为什么继承的color
属性无效?有没有办法使它有效?
答案 0 :(得分:3)
根据定义,border-color
不会被继承(除非您明确地为其分配值inherit
)。内部div
上没有border-color
,因此它采用初始值,根据定义,该值是元素的color
属性的值。
因此,您需要在元素上明确设置border-color
。
答案 1 :(得分:2)