欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

关于背景色显示问题_html/css_WEB-ITnose

程序员文章站 2022-05-10 13:36:37
...
在两个嵌套的类样式中,父样式定义了背景色,当子样式中定义了float:属性时,父样式的背景色显示不出,而取消子样式中的float:属性时就可以显示父样式定义的背景色。
比如:


aaaa


其中#ys1为定义了背景色的父样式。#ys2为定义了float:属性的子样式。
有什么办法在不取消#ys2的float:属性的情况下显示#ys1的背景色?

回复讨论(解决方案)

找到解决方式:当使用一个clear: both;属性的样式放在#ys2样式之后就能实现显示背景色。

你给父层 一个 float 或者 overflow:hidden 一样有效果的

为什么会出现这种现象?

为什么会出现这种现象?
因为当子样式中定义了float:属性时,这个子元素就不是常规文档流的一部分,
使得父元素不能在高度上包裹住子元素,父元素的高度变小或变为0,
当父元素的高度变为0时,当然就看不到父元素的背景色了,
你给父元素加一个边框样式 border:1px solid,
就能够看到父元素没有了高度变成一条线了

查阅 清浮动