CSS相对绝对定位 总结

CSS相对绝对定位 总结相对定位 relative 绝对定位 absolute fixed 在文档流的 relative 未完全脱离文档流的 浮动脱离文档流的 absolute fixedfloat 究竟有没有脱离文档流 为什么文字会围绕在 float 元素周围 而块状元素依然会忽略 float 元素 只能说明 float 未完全脱离文档流 一 解释 1 position st

position:relative | absolute | fixed | static | inherit

什么是文档流?
将窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素,即为文档流。(自上而下,自左向右)


一、解释

1、position: static

这个是元素的默认定位方式,元素出现在正常的文档流中,会占用页面空间。不能使用top,bottom,left,right和z-index。

2、position: relative

(1)相对于其父级元素所剩余的未被占用的空间进行定位(在父元素由多个相对定位的子元素时可以看出)
就是:以自己作为参照,进行定位(即position为static时的位置)

3、position:absolute

(1)以最近的且不是static定位的祖先元素作为参考进行定位,如果其所有的父级元素都是static定位,那么此元素最终则是以当前窗口作为参考进行定位(body)。可以使用top,bottom,left,right进行位置移动,亦可使用z-index在z轴上面进行移动。
(2)脱离文档流,不会占用页面空间。
(3)absolute使用margin时,不管它有没有已经定位的祖先元素,都会以它原来所在文档流中的位置作为参照。此时margin-top、margin-bottom不再对文档流中的元素产生影响,因为该元素已经脱离了文档流。对于relative、absolute、fixed定位元素,使用 left、right、top、bottom属性与margin属性混合使用会产生累加效果。

4、position: fixed

position: fixed直接以浏览器窗口作为参考进行定位。其它特性同absolute定位。


二、例子说事

例1、position: relative; left:0px(或right:0px)

<style> *{ 
       margin: 0;padding: 0;} #div{ 
        width: 300px; height: 300px; background:#ccc; position: relative;/*或者position: absolute;*/ left: 50%; margin-left: -150px; } #div span{ 
        background: orange; } #child{ 
        position: relative; top:0; left: 0;/*换为right: 0; 输出效果一样*/ background: green; width: 100px; height: 100px; } </style> <body> <div id="div"> <span>1dadada1</span> <div id=child></div> <a href="">asdasdasdadad</a> </div> </body> 

在这里插入图片描述

例2、position: relative; right:100px;
将例1代码修改为如下,其他不变。

#child{ 
       position: relative; top:0; right:100px; background: green; width: 100px; height: 100px; } 

在这里插入图片描述

例3、position:absolute; left:0px;
将例1代码修改为如下,其他不变。

#child{ 
        position: absolute; top:0; left: 0; background: green; width: 100px; height: 100px; } 

CSS相对绝对定位 总结

例4、position:absolute; right:0px;
将例1代码修改为如下,其他不变。

#child{ 
         position: absolute; top:0; right: 0; background: green; width: 100px; height: 100px; } 

在这里插入图片描述

例5、position:absolute; top:60px;margin-top: 70px;

将例1代码修改为如下,其他不变。

#child{ 
          position: absolute; top:60px; left: 0; margin-top: 70px; background: green; width: 100px; height: 100px; } 
#child{ 
          position: fixed; top:0; right: 0; background: green; width: 100px; height: 100px; } 

例7、position:fixed; top:10px;margin-top: 20px;
将例1代码修改为如下,其他不变。

#child{ 
          position: fixed; top:30px; left: 0; margin-top: 20px; background: green; width: 100px; height: 100px; } 

总结:

relative: 以自己作为参照,进行定位(即position为static时的位置)
absolute: 以最近的 且不是static定位的父级元素作为参照,进行定位的
fixed: 以浏览器窗口作为参考,进行定位的






版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233391.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 模型评估之混淆矩阵

    模型评估之混淆矩阵在前面的文章中我们讲到了回归模型和分类模型的评估指标,区分了准确率和精确率的区别,并且比较了精确率和召回率内在的联系。本篇文章我们再来学习另外一个评估方法,即混淆矩阵(confusion_matrix)。在讲矩阵之前,我们先复习下之前在讲分类评估指标中定义的一些符号含义,如下:TP(TruePositive):将正类预测为正类数,真实为0,预测也为0 FN(FalseNegative):将正类预测为负类数,真实为0,预测为1 FP(FalsePositive):将负类预测为正类数,真实为

    2022年5月14日
    40
  • PyCharm使用教程 — 7、使用PyCharm进行DeBug调试

    PyCharm使用教程 — 7、使用PyCharm进行DeBug调试DeBug运行/调试Bug大家都知道是程序中的错误,导致程序不能正常运行。而DeBug的字面意思就是解决Bug。DeBug执行的方式也是有三种,与上面的代码运行章节类似,1、右键DeBug2、导航栏DeBug点击导航栏绿色的蜘蛛图标即可DeBug启动。3、通过mainDebug执行如果程序有main函数入口,可以点击左侧的绿色小三角,然后选择上图标识的Debug项目名即可。4、断点如果Debug的程序没有断点,则跟正常的执行没有区别。断点:一个断点标注一个代码行,当程序执行到

    2022年8月25日
    5
  • DropDownList1 .cs指定初始值

    DropDownList1 .cs指定初始值DropDownList1.Item.Inset(0,”李四”);//这是插入第一个值为李四;DropDownList.Items.FindByValue(“李四”).selected=true;//这是调用findbyvalue方法指定初始值;转载于:https://www.cnblogs.com/huichao1314/p/5420117.html…

    2022年7月18日
    17
  • 【AekdyCoin】求小于等于N的与N互质的数的和

    【AekdyCoin】求小于等于N的与N互质的数的和又向大牛学到了一点。以下内容转大牛文章:ifgcd(n,i)=1thengcd(n,n-i)=1(1反证法:如果存在K!=1使gcd(n,n-i)=k,那么(n-i)%k==0而n%k=0那么必须保证i%k=0k是n的因子,如果i%k=0那么gcd(n,i)=k,矛盾出现;于是问题变的非常简单ANS=N*phi(N)/2i,n-i总是成对

    2022年7月23日
    11
  • jquery-uploadfile的使用「建议收藏」

    jquery-uploadfile的使用「建议收藏」jQueryFileUpload是一个Jquery文件上传组件,支持多文件上传、取消、删除,上传前缩略图预览、列表显示图片大小,支持上传进度条显示;支持各种动态语言开发的服务器端。官网链接:点击打开链接特点:拖放支持;上传进度条;图像预览;可定制和可扩展的;兼容任何服务器端应用平台(PHP,Python,RubyonRails,Java,Node.js,Goetc.)。使用方…

    2022年6月15日
    70
  • MPLS 虚拟专用网络 Hub and Spoke实验

    MPLS 虚拟专用网络 Hub and Spoke实验

    2021年4月12日
    969

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号