码迷,mamicode.com
首页 > 其他好文 > 详细

H5浮动与定位

时间:2020-02-23 18:26:07      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:了解   有关   坍塌   方向   遇到   元素   高度   设置   标签   

H5的奇妙之处就在于它的变幻莫测,接下来我想谈一下我对定位浮动的认知。

什么是浮动
首先要了解什么是浮动:脱离文档流,默认在当前的行对既定的方向进行移动(默认横排)。

用浮动可以解决什么问题
使用浮动之前我们要想明白浮动都可以解决什么问题:比如我们要放一排的div或是img,我们故可以通过调试margin之类的属性解决,但是有时会发现即便如此有时仍会产生空隙,我们就可以通过浮动来解决这一问题。再比如有时后我们需要一些标签不会占据文档流的显示,这时候也可以选择使用。

浮动会出现什么问题
但是浮动往往会产生一些问题:如:浮动自定义换行,浮动坍塌,浮动遮盖。

自定义换行:比如浮动往往是在遇到其他浮动块或是到既定边缘才会进行换行
浮动坍塌:因为浮动脱离文档流所以可以看起不再占据位置,这样就会导致父元素的长宽减小。导致子元素超出父元素
浮动遮盖:也是因为脱离文档流的原因,与浮动块同级的块级元素会重叠。
怎么清除浮动
因此我们要学会清除浮动,清除浮动就是为了解决上面的问题,有的解决方法是通过给float以外的块设定好属性,有的是清除浮动了,虽然两者效果可能相同,但前者的维护性和书写性实在是不很不友好,所以我主要写后者。
5. 给浮动块结尾一个空div并设置上clear:both属性。
其原理是float元素是不会在普通流中计算高度,拥有clear属性的div是在普通流中的,通过 “自动” 增加 上外边距(margin-top) 实现撑开父元素
6.给浮动块的元素加上一个after的伪类 并且设置为block 和 clear:both.
7.给浮动元素父容器加overflow:hidden.

什么是定位?
定位position,由边偏距和定位模式组成。

边偏距,4个,分别是top、bottom、left、right:后面可以%,还可以px等。

重点记一下定位模式:相对定位,绝对定位,固定定位。
相对定位relative:每次移动都以自己左上方的点为基准移动; 占有原来的位置。

绝对定位absolute:通过边偏移来移动位置,但它完全脱标,完全不占位置。 1. 父级元素无定位时,则子级元素的绝对定位以浏览器当前的屏幕为准; 2. 父级元素有定位时,则子级元素的绝对定位以最近的已经定位(相对、绝对、固定)的父级元素进行定位。

固定定位fixed:跟父级元素没有关系,只跟浏览有关; 固定定位完全脱标,不占位置。
好了,以上就是我对浮动与定位的认知。

H5浮动与定位

标签:了解   有关   坍塌   方向   遇到   元素   高度   设置   标签   

原文地址:https://www.cnblogs.com/yaoqianss/p/12350708.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!