源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 335|回复: 18

[CSS] 使用CSS的overflow属性防止float撑开div的方法

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2016-7-7 11:29:15 | 显示全部楼层 |阅读模式
我们在使用float设定浮动元素的时候经常会遇到撑破div的情况,其中一种解决方法即是利用overflow: hidden,这里我们就来看一下使用CSS的overflow属性防止float撑开div的方法:

许多应征前端工程师的人,在面试时都会被问到这类float的问题。
例如:div元素内的两个子元素p都float:left,外面的div会变成没有高度,此时该怎么办呢?
通常解法是在排版流里面的元素加一个after的伪元素,将它设成display: block以及clear:both即可解决。

CSS Code复制内容到剪贴板
  1. div:after {content: "";display: block;clear: both;}  

不过我今天意外发现,原来overflow: hidden;也会撑开div呀!如下:
长知识了。

XML/HTML Code复制内容到剪贴板
  1. <body>  
  2.   <div>  
  3.     <p>I am floated</p>  
  4.     <p>So am I</p></div><style>div {   
  5.     overflow: hidden;}p {   
  6.     float: left;}</style>  

深入   
让我们继续深入,来看下面的例子:
编写如下代码,查看效果
HTML代码: 

XML/HTML Code复制内容到剪贴板
  1. <div class="content">  
  2.     <div class="div1">  
  3.   
  4.     </div>  
  5. </div>  

CSS代码:

CSS Code复制内容到剪贴板
  1. .content {   
  2.     border: 1px solid red;   
  3. }   
  4. .div1 {   
  5.     width: 100px;   
  6.     height: 100px;   
  7.     background-color: cyan;   
  8. }  

效果如下:

201677113114643.jpg

201677113114643.jpg

在content中添加一个div1,并设置了content标签的边框和div1标签的大小和颜色,看到content标签把div1标签包裹起来了。并且还撑起了content标签的大小

但,当我们设置了div1向右浮动的属性之后

CSS Code复制内容到剪贴板
  1. .div1 {   
  2.     width: 100px;   
  3.     height: 100px;   
  4.     background-color: cyan;   
  5.     float: rightright;   
  6. }  

就会变成这个样子:

201677113138628.jpg

201677113138628.jpg

div1标签确实右对齐了,但是并没有撑起content标签的高度。
莫着急,我们需要设置一个属性,就是给content标签,添加overflow属性

添加属性 (overflow: hidden;)

CSS Code复制内容到剪贴板
  1. .content {   
  2.     border: 1px solid red;   
  3.     overflow: hidden;   
  4. }  

添加完之后,效果就成了这样

201677113202738.jpg

201677113202738.jpg

回复

使用道具 举报

16

主题

2万

回帖

376

积分

中级会员

Rank: 3Rank: 3

积分
376
发表于 2022-9-15 17:35:49 | 显示全部楼层
感谢楼主分享
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

68

积分

注册会员

Rank: 2

积分
68
发表于 2022-10-11 00:24:14 | 显示全部楼层
老衲笑纳了
回复 支持 反对

使用道具 举报

2

主题

1万

回帖

146

积分

注册会员

Rank: 2

积分
146
发表于 2022-12-16 21:30:55 | 显示全部楼层
管灌灌灌灌灌灌灌灌灌灌
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

55

积分

注册会员

Rank: 2

积分
55
发表于 2023-10-10 17:38:55 | 显示全部楼层
哈哈哈哈哈哈哈
回复 支持 反对

使用道具 举报

4

主题

2万

回帖

107

积分

注册会员

Rank: 2

积分
107
发表于 2024-3-2 06:01:49 | 显示全部楼层
怕怕怕怕怕怕怕怕怕怕怕怕怕怕
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

69

积分

注册会员

Rank: 2

积分
69
发表于 2024-4-19 11:58:31 | 显示全部楼层
还有人在不。。。。。。。。。。啊
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

66

积分

注册会员

Rank: 2

积分
66
发表于 2024-5-25 05:31:48 | 显示全部楼层
飞飞飞飞飞飞飞飞飞飞飞飞飞
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2024-7-12 16:35:56 | 显示全部楼层
刷刷刷刷刷刷刷刷刷刷刷刷刷刷刷
回复 支持 反对

使用道具 举报

6

主题

2万

回帖

247

积分

中级会员

Rank: 3Rank: 3

积分
247
发表于 2024-7-23 09:49:21 | 显示全部楼层
这个源码不错啊
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-24 07:50 , Processed in 0.073613 second(s), 27 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表