CSS定位中Positoin、absolute、Relative的一些研究

yizhihongxing

CSS定位中Position、Absolute、Relative的一些研究

Position属性

CSS中的Position属性用于指定元素在文档中的定位方式。它可以取三个值,分别是static、relative和absolute。

  • static: 默认值。元素按照正常文档流进行排布。
  • relative: 元素相对于其正常位置进行定位,也就是说,相对于该元素在文档中的实际位置进行定位。如果没有设置left、right、top、bottom属性,则仍然按照正常文档流进行排布。
  • absolute: 元素相对于最近的非static定位的父元素进行定位。如果没有找到这样的父元素,则相对于body元素进行定位。

定位的相对性

上面提到了Position属性可以用来指定元素在文档中的定位方式。对于absolute和relative属性来说,它们还有一个重要的特性,就是它们支持对位置的调整。这个位置的调整是相对于元素的原始位置来进行的。

对于relative属性来说,元素需要设置left、right、top、bottom属性来进行位置调整。元素的位置调整不会影响其他元素的位置,所以它不会导致其他元素重新排布。

<div style="background-color: pink; padding: 50px;">
  <div style="background-color: yellow; position: relative; left: 50px;">I'm relative element</div>
</div>

对于absolute属性来说,元素需要设置left、right、top、bottom属性来进行位置调整。然而,它的定位是相对于最近的非static定位的父元素来进行的,也就是说如果没有设置非static定位的父元素,那么就相对于body元素进行定位。

<div style="background-color: pink; padding: 50px; position: relative;">
  <div style="background-color: yellow; position: absolute; left: 50px;">I'm absolute element</div>
</div>

定位的叠加性

如果一个元素同时设置了relative和absolute属性,那么它的位置调整是相对于它自己的位置进行的。此时,它的位置调整会影响其他元素的位置,因为其他元素需要重新排布以腾出位置给它。

<div style="background-color: pink; padding: 50px;">
  <div style="background-color: yellow; position: relative;">
    <div style="background-color: purple; position: absolute; left: 50px;">I'm absolute element</div>
  </div>
  <div style="background-color: blue;">I'm another element</div>
</div>

定位的堆叠性

如果两个相邻的元素同时设置了position属性,并且它们之间没有空隙,那么它们的垂直位置的相对性取决于它们的z-index值。z-index属性用于指定元素在垂直方向上的堆叠顺序。z-index值越大的元素在前面,越小的元素在后面。

<div style="background-color: pink; padding: 50px;">
  <div style="background-color: yellow; position: relative; z-index: 1;">I'm relative element with z-index 1</div>
  <div style="background-color: blue; position: relative; z-index: 2;">I'm relative element with z-index 2</div>
</div>

总结

  • Position属性用于指定元素在文档中的定位方式。它可以取三个值,分别是static、relative和absolute。
  • relative属性是相对于元素的原始位置进行定位的,可以使用left、right、top、bottom属性进行位置调整。调整相对位置不会对其他元素产生影响。
  • absolute属性是相对于最近的非static定位的父元素进行定位的。定位的顺序受该父元素的位置影响。
  • 如果一个元素同时设置了relative和absolute属性,那么它的位置调整是相对于它自己的位置进行的。其他元素需要重新排布以腾出位置给它。
  • 如果两个相邻的元素同时设置了position属性,并且它们之间没有空隙,那么它们的垂直位置的相对性取决于它们的z-index值。z-index值越大的元素在前面,越小的元素在后面。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CSS定位中Positoin、absolute、Relative的一些研究 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • Css设置img属性让图片水平居中/居左/居右的写法

    请看下面的完整攻略。 一、文本水平居中 1.1 text-align属性 我们可以使用CSS3中的text-align属性来对图片进行文本水平居中的操作。具体的写法如下: img { display: block; margin: 0 auto; } 上述代码中,我们对img元素添加了display: block样式,使其成为块级元素;然后通过设置margi…

    css 2023年6月10日
    00
  • css float 解析学习

    CSS Float 解析学习 CSS 中的 float 属性用于设置元素的浮动方式,可以使元素脱离文档流并向左或向右浮动。本文将详细讲解 float 属性的使用方法、取值范围、注意事项和示例说明。 1. 使用方法 float 属性可以应用于块级元素和行内元素。使用方法如下: selector { float: value; } 其中,selector 表示要…

    css 2023年5月18日
    00
  • 利用CSS伪元素创建带三角形的提示框的实现方法

    当我们需要在网页中添加提示信息时,通常需要使用一些提示框来实现。而利用CSS伪元素创建带三角形的提示框是一种常见的实现方法。 下面是这种方法的完整攻略: 1.创建基本结构和样式 首先,我们需要创建一个包含提示文字的div元素,并给它添加对应的CSS样式,例如: <div class="tooltip">这是一个提示框</…

    css 2023年6月10日
    00
  • 手机端图片缩放旋转全屏查看PhotoSwipe.js插件实现

    要实现手机端图片缩放、旋转、全屏查看,可以使用PhotoSwipe.js插件。下面是详细的攻略步骤: 1. 引入PhotoSwipe插件 首先,在你的网站中引入PhotoSwipe插件的CSS和JS文件。可以从官方网站上下载最新版本:https://photoswipe.com/ <link rel="stylesheet" hre…

    css 2023年6月10日
    00
  • IE7下父元素及子元素的隐藏顺序不当带来的display:none出现BUG

    在IE7浏览器中,当父元素使用display:none属性隐藏,子元素也使用display:none属性隐藏且先于父元素隐藏,再显示的时候会出现BUG,即子元素无法显示。要解决这个问题,可以执行以下步骤: 使用visibility:hidden代替display:none 在IE7浏览器下,使用visibility:hidden代替display:none能…

    css 2023年6月10日
    00
  • CSS3弹性盒模型开发笔记(二)

    关于CSS3弹性盒模型开发笔记二,主要分为以下几个部分: 标题 在文章中,标题是非常重要的元素,可以通过#符号表示不同的级别,如一级标题使用一个#,二级标题使用两个#,以此类推。在CSS3弹性盒模型开发笔记二中,我们可以将标题分为以下几个级别: 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 块级元素和行内元素 在CSS中,元素分为块级元素和行内…

    css 2023年6月10日
    00
  • photoshop制作出时尚耐看的深蓝色网站导航效果

    下面是Photoshop制作出时尚耐看的深蓝色网站导航效果的完整攻略: 一、准备工作 打开Photoshop软件,创建一个新的文件,设置文件宽度为1200像素,高度为500像素,背景色为白色。 进入工具栏,选择矩形工具,选中填充颜色为#2e3d49(深蓝色),新建一个矩形,大小设置为1200×80像素,居中放置在新建文件的顶部。 二、制作导航背景效果 选择新…

    css 2023年6月10日
    00
  • Bootstrap创建可折叠的组件

    Bootstrap是一个流行的前端开发框架,提供了丰富的组件和样式,其中一个非常有用的组件就是可折叠的组件。这可以帮助你在页面上节省空间并提供更好的用户体验。 下面是创建可折叠组件的步骤: 步骤一 – 安装Bootstrap 要使用Bootstrap,首先需要安装它。可以选择从官方网站下载,或从官方CDN中获取CSS和JS文件。注意,如果想使用Bootstr…

    css 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部