CSS之定位一(position属性)

本文我们讨论涉及定位的position属性。首先我们来看一下position对应的值及其含义(表1)。

表1:position对应值

其中static是默认值,当元素未定义position或定义position值为static时,该元素内定义的top, bottom, left, righz-index无效。

relative表示相对定位,在文档流中仍然占有空间,其参考对象是离该元素最近的父元素。图1表示父元素的position值变化时,子元素(position=relative)与父元素的相对位置,由图可以看出其相对位置不随父元素的position值变化而变化。

图1:父元素position变化时对子元素(position=relative)位置的影响g

图1中外框和除position属性值不一样外,其他css属性均一致,其内外框html和相同部分css见图2。

图2:内外框html和相同部分css

absolute表示绝对位置,其在文档流中不占空间,其参考对象是离该元素最近的position值不是static的父元素。由图3可以看出。

图3:父元素position变化时对子元素(position=absolute)位置的影响

图3中外框和除position属性值不一样外,其他css属性均一致。其内外框html和相同部分css见图4。

图4:内外框html和相同部分css

值得注意的是,当其父元素position值均为static或者未定义时,其参考对象应该是document(浏览器视窗大小的矩形)而不是网上所说的body元素或者html元素。为验证以上说法 我们设置下面三组对照,代码如图5所示,其中.fixed.absolutecss样式如图6所示。.absolute始终完全覆盖在.fixed上,由此可见.absolute的位置没有随html元素和body元素的变化而变化,因此其参考对象不是body元素或者html元素。

图5:三组对照
图6:.fixed和.absolute的css样式

fixed表示固定定位,类似于absolute,但是其是根据浏览器窗口定位的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,696评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,403评论 1 45
  • CSS的position总是属性很容易让人弄混~ 为了仔细区别它们,所以今天总结一下CSS的position属性~...
    fehysunny阅读 8,083评论 0 7
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 5,366评论 0 5
  • 人性的弱点:恐惧与贪婪,常说要克服恐惧与贪婪,突然觉得贪婪的可怕程度远远超过恐惧,恐惧最多让人平淡无奇,...
    瑾蓉阅读 2,865评论 0 2

友情链接更多精彩内容