为什么要加浮动
不理解为什么要加浮动,求大佬指教。
不理解为什么要加浮动,求大佬指教。
2017-06-27
解释下原理:这个居中效果由两步构成:
1.将待居中元素块移动屏幕宽度的50%,使其紧靠屏幕中线一侧
2.将待居中元素块移动自身宽度的50%,使其居中
其中,第一步的效果是由
设置待居中元素的父元素样式:position:relative;left:50%;完成的
第二步如果想当然的设置待居中元素块的样式为:position:relative;left:50%;就会导致错误,因为百分比单位是相对于父元素的宽度而言的,而不是相对自身,要想使百分比单位是相对自身,可以间接的使父元素宽度等于自身宽度,因此我们可以使父元素浮动(浮动会使元素块脱出文档流,不再继承父元素宽度),这样待居中元素块的父元素的宽度就会等于待居中元素的宽度,并且自适应;这就是加float的作用
有一个有趣的现象就是当为元素(不论之前是什么类型元素,display:none 除外)设置以下 2 个句之一:
1. position : absolute
2. float : left 或 float:right
简单来说,只要html代码中出现以上两句之一,元素的display显示类型就会自动变为以 display:inline-block(块状元素)的方式显示,当然就可以设置元素的 width 和 height 了,且默认宽度不占满父元素。
这段文字可以说明啊 ,只有加了float或者position才变成块状元素,我的理解是能够浮动都是块状元素,加了float默认变为block,所以称为隐性。
举报