CSS-定位(Position)

 

目录
  • CSS-定位(Position)
    • 学习自
    • Overview
    • static
    • fixed
    • relative
    • absolute
    • sticky
    • 重叠的元素

 

学习自

菜鸟教程

Overview

CSS中HTML元素存在以下之后定位选项

Position Desc
static html 元素的默认的定位方式(即没有定位),元素正常出现在文档流中
fixed 相对于浏览器窗口是固定的
relative 相对于自己的定位
absolute 相对于父布局进行定位
sticky 粘性定位, 相当于 relative 和 fixed 的结合体

static

HTML 元素的 默认 值,即没有定位,元素正常出现在文档流中,此定位方式不会受到 top right .. 的影响。

fixed

元素的位置相对于浏览器窗口是固定的。

CSS-定位(Position)_文档流

<!DOCTYPE <!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8" />
  <title>Study Html</title>
  <style>
    h2 {
      width: 100%;
      border-left-style: solid;
      border-left-width: 5px;
      border-left-color: cornflowerblue;
      background-color: beige;
      position: fixed;
    }
  </style>
</head>

<body>
  <h2>This is a Fixed H2</h2>
  <ul>
    <li>Item</li>
    <li>Item</li>
    <li>Item</li>
    <li>Item</li>
    <!-- .... -->
  </ul>

</body>

</html>

relative

relative 定位是相对其 正常 的位置.

CSS-定位(Position)_文档流_02

<!DOCTYPE <!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8" />
  <title>Study Html</title>
  <style>
    h2 {
      border-left: 5px solid coral;
      background-color: aliceblue
    }

    h2.positive-left {
      position: relative;
      left: 20px;
    }

    h2.negative-left {
      position: relative;
      left: -20px;
    }
  </style>
</head>

<h2>This is a common normal H2!</h2>
<h2 class="positive-left">This is a left=20px H2!</h2>
<h2 class="negative-left">This is a left=-20px H2!</h2>

<body>


</body>

</html>

absolute

absolute 定位方式相对的是父布局,如果没有父布局,那么相对的是 html 节点。

CSS-定位(Position)_文档流_03

<!DOCTYPE <!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8" />
  <title>Study Html</title>
  <style>
    h2 {
      border-left: 5px solid coral;
      background-color: aliceblue;
      position: absolute;
      top: 100px;
      left: 100px;
    }
  </style>
</head>

<h2>This is a common normal H2!</h2>
<p>绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于html</p>

<body>


</body>

</html>

sticky

sticky 是粘性定位,这种定位方式相当于 relativefixed 定位方式的结合体。

CSS-定位(Position)_前端_04

<!DOCTYPE <!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8" />
  <title>Study Html</title>
  <style>
    h2 {
      position: sticky;
      left: 10px;
      top: 0PX;
      border-left: 5px solid lightblue;
      background-color: antiquewhite;
      width: 100%;
    }
  </style>
</head>

<p>翻滚吧</p>
<p>翻滚吧</p>
<p>翻滚吧</p>
<p>翻滚吧</p>
<p>翻滚吧</p>
<h2>翻滚吧,牛宝宝!</h2>
<p>翻滚吧</p>
<p>翻滚吧</p>
<p>翻滚吧</p>
<p>翻滚吧</p>
<!-- ..... -->
<body>


</body>

</html>

重叠的元素

元素的定位与文档流无关,所以他们可以覆盖页面上的其他的元素,z-index 属性确定了哪个元素在上面,哪个元素在下面。

CSS-定位(Position)_文档流_05

<!DOCTYPE <!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8" />
  <title>Study Html</title>
  <style>
    img {
      position: absolute;
      top: 0px;
      left: 0px;
      z-index: -1;
    }
  </style>
</head>

<p>测试文本测试文本测试文本测试文本测试文本测试......</p>
<img src="./imgs/dog.png" />

<body>


</body>

</html>

除非特殊声明否则,本文章均属 鲁迅认识的那只猹 原创,未经许可禁止转载,否则将保留追究法律责任的权利。

如果损害了您的相关权益,请及时联系我,我将妥善处理