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

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中postion和opacity及cursor的特性

    详解CSS中position、opacity及cursor的特性 position CSS中的position属性用于指定元素的定位方式。常用的取值有static、relative、absolute和fixed。其中,static是默认值,元素不存在定位(也就是正常流布局),不受top、right、bottom、left等属性的影响。relative与sta…

    css 2023年6月10日
    00
  • 前端从浏览器的渲染到性能优化

    前端从浏览器的渲染到性能优化是一个在构建Web应用程序中非常重要的过程。本攻略将介绍从网页加载到渲染完毕,以及到如何优化网页性能,以下是详细说明: 网页加载 HTTP 请求 网页加载的第一步是浏览器为网页资源(HTML、CSS和JavaScript等)发送HTTP请求。如需优化性能,我们应确保最小化HTTP请求。 HTML 解析和 DOM 树构建 浏览器将接…

    css 2023年6月9日
    00
  • 用CSS3实现瀑布流布局的示例代码

    下面我会详细讲解如何用CSS3实现瀑布流布局的示例代码,包含如何计算每一列中最短的高度,如何利用CSS3的flexbox实现自适应布局,以及如何使用CSS3的伪元素实现背景色渐变等内容。 使用CSS3实现瀑布流布局的示例代码攻略 步骤一:HTML结构 首先需要创建HTML文件,并按照以下结构来构建瀑布流布局的HTML代码。 <html> <…

    css 2023年6月9日
    00
  • CSS 网页表单实现鼠标悬停交互效果

    下面我将为您详细讲解“CSS 网页表单实现鼠标悬停交互效果”的完整攻略。 什么是鼠标悬停交互效果 在网页设计中,鼠标悬停交互效果是一种用户界面设计技术,它使用户在鼠标悬停在页面元素上时产生视觉反馈,从而增强了用户体验和导航性。鼠标悬停交互效果可以应用在各种网页元素上,其中最常见的是应用在网页表单中。 如何实现鼠标悬停交互效果 在实现鼠标悬停交互效果的过程中,…

    css 2023年6月10日
    00
  • CSS内边距设置方法详解

    CSS内边距(padding)指的是元素边框与内容之间的距离。内边距可以通过padding-top、padding-right、padding-bottom、padding-left四个属性分别设置四个方向的值。也可以使用padding属性,在一个声明中同时设置四个方向的值。 例如: .box { padding: 20px; } 上述代码将.box元素的上…

    Web开发基础 2023年3月20日
    00
  • 详解CSS中clear:left/right的用法

    详解CSS中clear:left/right的用法 在CSS中,clear属性常被用来清除浮动(float)带来的影响,以保证元素在文档中被正常显示。在清理浮动的时候,clear属性可以被设置为left、right或both,表示清除左浮动、右浮动或两侧浮动带来的影响。 语法 .clear{ clear: left | right | both; } 值 l…

    css 2023年6月10日
    00
  • 精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)

    标题:精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)攻略 介绍:Bootstrap是一个非常流行的前端开发框架,可以帮助开发人员在短时间内快速构建现代化的网站和Web应用程序。在本文中,我们将重点介绍Bootstrap中选项卡和栅格布局的使用。此外,我们将详细说明如何在代码中添加注释,以便其他开发人员能够更好地理解您的代码。 一、选项卡 …

    css 2023年6月9日
    00
  • alt属性和title属性

    我来详细讲解一下“alt属性和title属性”的完整攻略。 什么是alt属性和title属性? 在HTML中,图片是通过标签来插入的。其中,图片不能够像文字那样直接传达信息,所以需要使用alt属性和title属性来描述图片。通过这两种属性,用户可以更好的了解图片的内容,也可以帮助屏幕阅读器等工具更好的解读图片。 alt属性 alt属性是用于描述图片的,当图片…

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