为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要加浮动

不理解为什么要加浮动,求大佬指教。

正在回答

3 回答

解释下原理:这个居中效果由两步构成:

1.将待居中元素块移动屏幕宽度的50%,使其紧靠屏幕中线一侧

http://img1.sycdn.imooc.com//598c241d000186aa04020063.jpg

2.将待居中元素块移动自身宽度的50%,使其居中

http://img1.sycdn.imooc.com//598c241d0001c8bd03960062.jpg

其中,第一步的效果是由

设置待居中元素的父元素样式:position:relative;left:50%;完成的

第二步如果想当然的设置待居中元素块的样式为:position:relative;left:50%;就会导致错误,因为百分比单位是相对于父元素的宽度而言的,而不是相对自身,要想使百分比单位是相对自身,可以间接的使父元素宽度等于自身宽度,因此我们可以使父元素浮动(浮动会使元素块脱出文档流,不再继承父元素宽度),这样待居中元素块的父元素的宽度就会等于待居中元素的宽度,并且自适应;这就是加float的作用

7 回复 有任何疑惑可以回复我~
#1

主宰灵魂

牛比!
2018-05-25 回复 有任何疑惑可以回复我~

加float:left 是为了设置块的初始位置,方便之后定位为relative后移动块(relative是相对自身的初始位置进行定位)

1 回复 有任何疑惑可以回复我~

有一个有趣的现象就是当为元素(不论之前是什么类型元素,display:none 除外)设置以下 2 个句之一:

 1. position : absolute 

 2. float : left 或 float:right 

简单来说,只要html代码中出现以上两句之一,元素的display显示类型就会自动变为以 display:inline-block(块状元素)的方式显示,当然就可以设置元素的 width 和 height 了,且默认宽度不占满父元素。

这段文字可以说明啊 ,只有加了float或者position才变成块状元素,我的理解是能够浮动都是块状元素,加了float默认变为block,所以称为隐性。

3 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要加浮动

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信