html相对定位和绝对定位

html相对定位和绝对定位相对定位 该元素相对于自己原有位置 偏移一定距离 相对的是自己 绝对定位 该元素相对于其父元素 偏移一定距离 相对的是父元素 重点是这个父元素也需要是设置了 position 属性 从最近的父元素开始找 直到找到 body 位置为止 nbsp 1 相对定位 lt divid test gt lt pclass p1 gt 相对定位 相对于自己原来的位置

相对定位:该元素相对于自己原有位置,偏移一定距离。相对的是自己。

绝对定位:该元素相对于其父元素,偏移一定距离。相对的是父元素,重点是这个父元素也需要是设置了position属性。从最近的父元素开始找,直到找到body位置为止。

 

1)相对定位

 
   

相对定位:相对于自己原来的位置,偏移一些距离

相对定位,相对的是自己

对应的css样式:

 #test{ height: 300px; width: 300px; background: gray; } /*p标签本身会有padding和margin值*/ p{ margin: 0px; padding: 0px; } .p1{ height: 100px; width: 100px; background: blue; } .p2{ height: 80px; width: 80px; background: red; }

运行后效果是:(这时没有设置position属性呢)

html相对定位和绝对定位

 

然后,给p1设置相对定位

 .p1{ height: 100px; width: 100px; background: blue; /*设置相对定位*/ position: relative; /*相对于左边偏移20px,相对于上边偏移20px*/ left: 20px; top:20px; }

运行后效果如下:

html相对定位和绝对定位

 

2)绝对定位

再增加一個div

 
   

相对定位:相对于自己原来的位置,偏移一些距离

相对定位,相对的是自己

绝对定位:相对于自己父元素的位置,偏移一些距离

绝对定位,相对的是父元素

相应的样式

 #test2{ height: 300px; width: 300px; background: pink; } .p3{ height: 100px; width: 100px; background: green; /*設置绝对定位*/ position: absolute; left: 30px; top: 30px; } .p4{ height: 90px; width: 90px; background: gold; }

同時將p1的相对定位去掉。这时候效果如下:

这里写图片描述

然後給p3設置绝对定位:

 .p3{ height: 100px; width: 100px; background: green; /*設置绝对定位*/ position: absolute; left: 30px; top: 30px; } .p4{ height: 90px; width: 90px; background: gold; }

觉得效果是怎樣呢?因爲test2是p3的父元素,所以猜測效果是p3相对于test2,向左偏移30px,向下偏移30px。那麽究竟是不是這樣呢??运行后效果如下:

这里写图片描述

我擦,跟想的不一樣啊。。。

別急,这是因为:虽然test2是p3的父元素,但是test2沒有設置position屬性,所以p3就會繼續向上找,找test2的父元素,直至到body为止。所以就出現了如上效果。那麽,如果想p3相对于test2,向左偏移30px,向下偏移30px,只需給test2設置position屬性即可。

 #test2{ height: 300px; width: 300px; background: pink; position: relative; }

ok啦,這就是绝对定位。相对的是父元素。

需要注意的是:绝对定位的元素不占原來的位置,這就是p4移動到test2左上角的原因。

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

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

(0)
上一篇 2026年3月19日 下午4:45
下一篇 2026年3月19日 下午4:45


相关推荐

  • php soapclient xml,PHP SoapClient请求

    php soapclient xml,PHP SoapClient请求我正在尝试使用 thisWSDL 将 SOAP 请求发送到新闻通讯服务 这是我的 PHP client newSoapClien wsdl url array login gt myusername password gt mypassword trace gt true client gt AddSubscribe newSoapParam

    2026年3月19日
    2
  • 逻辑回归LR模型简介「建议收藏」

    逻辑回归LR模型简介「建议收藏」4.LR与线性回归的区别1.都是广义的线性回归,但LR可用于分类,在feature到结果的映射中加入了sigmoid(),实现了非线性。2.损失函数:线性回归–>平方损失函数;LR–>似然函数3.预测范围:线性回归–>整个实数域(敏感度一致);LR–>[0,1]…

    2022年10月13日
    4
  • mysql json decode_json_decode函数详解

    mysql json decode_json_decode函数详解json_decode是php5.2.0之后新增的一个PHP内置函数,其作用是对JSON格式的字符串进行编码.那么这个函数该如何使用呢?json_decode的语法规则:json_decode(string$json[,bool$assoc=false[,int$depth=512[,int$options=0]]])json_decode接受一个JSON格…

    2022年7月17日
    45
  • 90后阿里千问技术负责人林俊旸发文宣布卸任 此前刚开源4款小尺寸模型

    90后阿里千问技术负责人林俊旸发文宣布卸任 此前刚开源4款小尺寸模型

    2026年3月13日
    2
  • mysql报错注入_mysql报错注入[通俗易懂]

    mysql报错注入_mysql报错注入[通俗易懂]报错注入这里主要介绍3种MySQL数据库报错注入的发法,分别是updatexml、floor和exp。1.updatexmlupdatexml的报错原理从本质上来说就是函数的报错。selectupdatexml(1,concat(0x7e,(selectversion()),0x7e),1);这里还是使用前面的例子,举出一个爆破数据库版本的样例Payload:爆破数据库版本信息?id=1’+…

    2022年9月30日
    4
  • 《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案

    《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案《Android移动应用基础教程》(AndroidStudio)(第二版)黑马程序员课后习题答案目录第1章Android基础入门第2章Android常见界面布局第3章Android常见界面控件第4章程序活动单元Activity第5章数据存储第7章使用内容提供者共享数据第8章广播机制第9章服务第10章Android事件处理第11章网络编程第1章Android基础入门一、填空题1、dex2、@color3、AndroidManifest.xml4、LogCat二、判断题

    2022年5月27日
    387

发表回复

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

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