ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

css中的相对定位与绝对定位

2019-08-30 18:40:57  阅读:273  来源: 互联网

标签:定位 E5% 元素 绝对 相对 E4% css


原文链接:https://www.mk2048.com/blog/blog.php?id=10h20ijb&title=css%E4%B8%AD%E7%9A%84%E7%9B%B8%E5%AF%B9%E5%AE%9A%E4%BD%8D%E4%B8%8E%E7%BB%9D%E5%AF%B9%E5%AE%9A%E4%BD%8D

      之前说过了CSS有三种基本的布局机制:普通流、浮动和绝对定位。除非专门指定,否则所有的框都在普通流中定位。而普通流中元素框的位置由元素在HTML中的位置决定。

  • 相对定位

      相对定位实际上被看做普通流定位模型中的一部分,因为它是通过设置垂直或者水平位置,让这个元素相对于它原来的位置移动。而且,虽然它从原来位置移走,但是仍然占据原来所占的空间。可以用left,right来控制元素向右,左的移动,可以用top,bottom来控制元素的下,上的移动。需要注意的是:相对定位时,数值型偏移是对于元素自身的,而百分比却是相对于包含块的width与height的。如下图:

 
  • 绝对定位

      绝对定位是CSS中3种定位机制之一,它会使定位元素与文档流无关,因此不占据空间。文档流中其他元素会像绝对定位的元素不存在时一样布局。

 

绝对定位元素的位置相对于最近的已定位祖先元素,如果元素没有已定位的祖先元素,那么它的位置相对于初始包含块document。

 

绝对定位元素的伸缩性:当我们把 width 设置为 auto 的时候(或者不设置 ),绝对定位元素会根据其 left 和 right 自动伸缩其大小。top与bottom也是如此。

 

绝对定位元素居中:因为绝对定位元素具有伸缩性,所以如果我们将绝对定位元素的width设置为auto时,同时把left与right设置为0,那么元素就会将其相对的父元素水平填充满。这时如果我们把宽度设置为固定值,margin为auto的前提下,只要 left 和 right 的值相等(或都为0),且不超过其相对元素减去该绝对定位元素 width 的一半,就可以实现水平居中了。

 

垂直居中也是如此,只要top与bottom的值相等就可以,这样我们的绝对定位元素就做到了垂直水平居中了。

   

标签:定位,E5%,元素,绝对,相对,E4%,css
来源: https://blog.csdn.net/qq_37555524/article/details/100163967

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有