在上海乐字节学习的第十三天(持续更新中)

109 阅读2分钟

高度自适应

一、高度自适应

1.高度不去设置,或者高度设置auto 内容撑开父元素的高度。
2.内容撑开父元素的高度 最小高度的设置 min-height
3.浮动元素添加高度自适应 添加浮动元素的父元素没有高度,会出现高度塌陷

二、高度塌陷

1.形成原因

当子元素有浮动,父元素没有高度的时候,父元素会出现高度塌陷
注:浮动的子元素不会撑开父元素的 height 或者是 min-height。

2.解决方法

a.给出现高度塌陷的元素添加:overflow:hidden;

原理:overflow:hidden;触发了一个 BFC(布局逻辑)

BFC规定:计算BFC高度时候,浮动元素也参与计算。

弊端:隐藏掉定位在当前元素外围的内容。

b.在浮动元素的下方(同级)添加一个空的div,给div设置样式
div{clear:both;}

原理:添加的空div添加了clear:both;忽略上方同级添加浮动的元素留出的空间。在父元素最底下显示,撑开父元素高度。

弊端:形成代码的冗余(出现高度塌陷,添加一个div)

c.万能清除法:

.clear_fix:after{ content:"."; clear:both; display:block; height:0;
overflow:hidden; visibility:hidden; } .clear_fix{ zoom:1; }

三、万能清除法

1.clear:both;

当前元素会忽略上方添加浮动的元素 留出来的空间。

2.伪对象选择符

a.元素选择符:

:after{ content:""; }

说明: 在某个元素的后面用css的形式添加内容(图片、文本)。
b.元素选择符:
:before{
content:"";
}
说明: 在某个元素的前面用css的形式添加内容(图片、文本)。

c.元素选择符:

:first-letter{ }

说明:控制第一个字符的样式

d.元素选择符:

:first-line{ }

说明:控制第一行的样式

  1. a.display:none;

将元素彻底隐藏,不再占据空间

b.

visibility:hidden;

将元素隐藏,占据空间,在页面上留下一片空白