实例讲解CSS中相对定位和绝对定位的用法和区别(图文)

css中的position属性可以设置元素的定位类型,比如fixed,relative,absolute等等,但是很多人搞不懂relative相对定位和absolute绝对定位的区别,这篇文章就和大家讲讲什么是绝对定位,什么是相对定位,以及相对定位和绝对定位的区别,有一定的参考价值,感兴趣的朋友可以参考一下。

一、相对定位

相对定位是指,该元素相对自己原来位置,偏移一定距离,元素可以通过顶部top,底部bottom,左侧left和右侧right属性来设置定位。它相对的是它自己。

举例:大div里面包含5个小P,给P不同的类名,分别设置绝对定位和相对定位,看看他们有什么变化

没有设置定位的代码如下:

立即学习“前端免费学习笔记(深入)”;

          *{padding: 0;margin: 0;}   .box{width: 400px;height: 500px;border: 1px solid black;margin: 50px auto;}   .p1{width: 100px;height: 100px;background: red;}   .p2{width: 100px;height: 100px;background: orange;}   .p3{width: 100px;height: 100px;background: yellow;}   .p4{width: 100px;height: 100px;background: green;}   .p5{width: 100px;height: 100px;background: purple;}      

11

22

33

44

55

效果如图所示:

aa.jpg

现在给第一个p标签设置相对定位,让他相对于自己原来的位置上偏移50px,左边偏移50px,具体代码如下:

.p1{width: 100px;height: 100px;background: red;position: relative;left: 50px;top: 50px;}

效果图:

bb.jpg

对比前后效果图,有没有发现第一个p元素,它相对自己原来的位置发生了偏移,而且偏移以后,它依然占据原来的位置,后面的元素不会填补,如果有重叠,会重叠在它文档流元素之上,相对定位不会把其他元素挤掉。

二、绝对定位

绝对定位是指,该元素相对它的父元素偏移一定距离,元素可以通过顶部top,底部bottom,左侧left和右侧right属性来设置定位。

注:相对的是父元素,而且这个父元素必须设置了position属性。如果父元素没有position属性,则从最近的父元素开始找,直到找到body为止。

举例:给第三个p元素设置绝对定位,让其上偏移200px,左偏移200px,具体代码如下:

.p3{width: 100px;height: 100px;background: yellow;position: absolute;left: 200px;top: 200px;}

效果图:

cc.jpg

对比图1和图3可以发现,设置了绝对定位的元素,会脱离文档流,后面的元素会填补上来。因为第三个p标签的父元素为div,没有给div设置position属性,所以它最终找到body,相对于body发生了偏移。

三、相对定位和绝对定位的区别

相对定位:相对自己原来的位置发生偏移,不会脱离文档流,不会删除它原来在文档流中占据的位置,且后面是元素不会填补空位

绝对定位:相对它的父元素发生偏移(而且这个父元素必须设置了position属性,如果父元素没有position属性,则从最近的父元素开始找,直到找到body为止),会脱离文档流,后面的元素会填补它原来的位置。

以上给大家介绍了什么是相对定位,什么是绝对定位,以及相对定位和绝对定位的区别,初学者一定要自己动手尝试,希望这篇文章对你有所帮助!

更多相关视频教程请访问:CSS教程

以上就是实例讲解CSS中相对定位和绝对定位的用法和区别(图文)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1612734.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 03:09:45
下一篇 2025年12月24日 03:09:55

相关推荐

  • css怎么重置样式?网页中8种css默认样式重置代码汇总

    本篇文章给大家带来的内容是介绍css怎么重置样式,总结了一些常用css默认样式重置的代码分享给大家。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 在网页设计开发时,让人最头疼的莫过于让页面兼容各大浏览器,准确些是兼容它们“默认”的CSS样式表。那么,“抹掉”这些css默认样式表成…

    好文分享 2025年12月24日
    000
  • 如何利用css实现圆形效果?(代码实例)

    本篇文章给大家带来的内容是关于如何利用css实现圆形效果?(代码实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 之前我们知道,CSS3动画效果由3大部分组成:变形、过渡和动画。前2章,我们已经对变形效果和过渡效果进行详细地讲解。这一章我们来讲解CSS3中“真正”的动画效果。 …

    2025年12月24日
    000
  • flex-shrink如何计算?flex-shrink的计算方法介绍

    本篇文章给大家带来的内容是关于flex-shrink如何计算?flex-shrink的计算方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 先回顾一下flex-grow 假设有一个div内包含三个子div1, div2, div3,宽度分别200px.对于flex-grow对…

    2025年12月24日
    000
  • CSS什么是继承?CSS如何使用?

    本篇文章给大家带来的内容是介绍css什么是继承?css如何使用?有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助。 CSS的继承 css的继承指的是当标签具有嵌套关系时,内部标签自动拥有外部标签的不冲突的样式的性质。 在Css中有些属性不允许继承,例如,border属性没有继承性。多边框…

    好文分享 2025年12月24日
    000
  • CSS选择符是什么?CSS选择符有哪些?

    本篇文章给大家带来的内容是介绍css选择符是什么?css选择符有哪些?有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助。 W3School离线手册(2017.03.11版)下载:https://pan.baidu.com/s/1c6cUPE7jC45mmwMfM6598A 选择符指的是要…

    好文分享 2025年12月24日
    000
  • 如何使用CSS和Vanilla.js实现展示苹果设备的交互动画(附源码)

    本篇文章给大家带来的内容是关于如何用css和vanilla.js实现展示苹果设备的交互动画(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代…

    2025年12月24日
    000
  • 如何使用纯CSS实现万圣节的toggle控件(附源码)

    本篇文章给大家带来的内容是关于如何使用纯css实现万圣节的toggle控件(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码地址 https://github.com/shanyuhai123/learnCSS/tree/master/0159-hallow…

    2025年12月24日
    000
  • CSS 3D实现旋转球是如何实现的?(代码案例)

    本篇文章给大家带来的内容是关于css 3d实现旋转球是如何实现的?(代码案例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 废话不多说了,直接给大家贴代码了,具体代码如下所示: zimv-css 3d ballbody{padding: 100px 0 0 150px;}.wra…

    2025年12月24日
    000
  • 图文详解CSS中rgba,rgb和opacity之间的区别

    css中设置背景颜色的方式有很多,比如background-color,rgb,rgba等等,那你知道rgba,rgb和opacity之间的区别吗?这篇文章就给大家讲讲rgba,rgb和opacity之间的区别,有一定的参考价值,感兴趣的朋友可以参考一下。 rgb和rgba的区别: rgb就是指红色…

    2025年12月24日
    000
  • CSS实现富有创意的页面加载(loading)动画效果

    小伙伴们在浏览网站时有没有遇到页面“loading中,请稍后”的情况,作为前端工程师,你会用css制作页面加载(loading)动画效果吗?这篇文章给大家分享一个富有创意的页面加载(loading)动画代码,有一定的参考价值,感兴趣的朋友可以看看。 制作一个富有创意的页面加载(loading)动画需…

    2025年12月24日
    000
  • 什么是BFC?BFC的深入解析

    本篇文章给大家带来的内容是关于什么是bfc?bfc的深入解析 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 一、什么是BFC Formatting context 是 W3C CSS2.1 规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位…

    2025年12月24日 好文分享
    000
  • css3中all属性有什么用?css3中all属性的用法介绍

    本篇文章给大家带来的内容是关于css3中all属性有什么用?css3中all属性的用法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 一、兼容性 如下图: 兼容性还行, 除了IE不支持,其他浏览器基本上都绿油油,目前自娱自乐,内网项目什么的都是可以用用的。 二、all是干嘛用的…

    2025年12月24日 好文分享
    000
  • css中flex弹性布局的步骤讲解(附代码)

    本篇文章给大家带来的内容是关于css中flex弹性布局的步骤讲解(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 html: *{ margin: 0; padding: 0; box-sizing: border-box; } .wrap{ width: 300px; h…

    2025年12月24日 好文分享
    000
  • css中clip-path属性的用法讲解(附代码)

    本篇文章给大家带来的内容是关于css中clip-path属性的用法讲解(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 clip-path的使用 polygon 值为多个坐标点组成,坐标第一个值是x方向,第二个值是y方向。 左上角为原点,右下角是(100%,100%)的点。…

    2025年12月24日 好文分享
    000
  • HTML+CSS实现好看的三角形提示框样式

    在浏览网站时,大家有没有发现网站中有各式各样新颖的提示框,那你知道这些好看的提示框怎么制作的吗?这篇文章就和大家分享一个css实现的好看的三角形提示框,有一定的参考价值,感兴趣的朋友可以参考一下。 想要用CSS实现三角形提示框样式需要用到很多CSS中的属性,比如:display属性,border-r…

    2025年12月24日
    000
  • CSS中Overflow的属性是什么?Overflow属性详解

    很多人学习css的时候,不太知道overflow的属性是什么?怎么用overflow的属性,下面创想鸟为你总结一下overflow属性和用法。 我们都知道,盒子的大小和盒子的位置都是可以用css来控制的,但是有些时候,我们的盒子出现内外都改变的时候,css将如何处理呢,假如,我们设置盒子的高度,我们…

    2025年12月24日
    000
  • css怎么让背景图片居中?背景图片居中的方法介绍(代码实例)

    在前端页面的开发中,图片的显示方法有两种,分别为:img标签显示图片,background属性设置为背景图片显示。我们知道img图片可以设置图片居中效果,那么背景图片可以设置居中吗?如何让背景图片居中?本篇文章就给大家介绍css实现背景图片的居中的方法。有一定的参考价值,有需要的朋友可以参考一下,希…

    2025年12月24日
    000
  • HTML+CSS实现页面加载(loading)动画效果

    大家在浏览页面时有没有遇到页面正在loading(加载)的情况,那作为一个前端开发人员,你知道如何用css3和html制作页面加载动画效果吗?这篇文章就和大家分享一个超级简单实用的css3 圆圈加载(loading)动画效果的代码,有一定的参考价值,感兴趣的朋友可以看看。 想要实现loading加载…

    2025年12月24日
    000
  • 浅谈css使用hsl()和hsla()设置颜色值的方法(图文详解)

    css如何使用hsl()和hsla()设置颜色值?本篇文章就给大家浅谈一下css使用hsl()和hsla()设置颜色值的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 css中的两种设置颜色值的方式:hsl()和hsla(),它们基本上都是采用了HSL色彩模式的方法来设置颜色…

    2025年12月24日 好文分享
    000
  • 如何使用纯CSS实现棋盘的错觉动画(附源码)

    本篇文章给大家带来的内容是关于如何使用纯css实现棋盘的错觉动画(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom,容器…

    2025年12月24日
    000

发表回复

登录后才能评论
关注微信