百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

CSS Position属性六个取值和区别

toyiye 2024-05-09 18:41 20 浏览 0 评论

position 的含义是指定位类型,取值类型可以有:static、relative、absolute、fixed、inherit和sticky,这里sticky是CSS3新发布的一个属性

一、static

static 是 position 的默认值,就是没有定位,元素处于现在正常的文档流中

二、relative

relative 是相对定位,指的是给元素设置相对于自己原本位置的定位,元素并不脱离文档流,因此元素原本的位置会被保留,其他的元素位置不会受到影响

案例演示

html复制代码<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
       * {
            margin: 0px;
            padding: 0px;
        }
        .container {
            width: 100%;
            height: 300px;
        }
        .content {
            width: 100px;
            height: 100px;
        }
        .content_yellow {
            background-color: yellow;

        }
        .content_red {
            background-color: red;
        }
        .content_black {
            background-color: black;
        }
    </style>
</head>
<body>
    <div class="container">
        <div class="content_yellow content"></div>
        <div class="content_red content"></div>
        <div class="content_black content"></div>
    </div>
</body>
</html>

现在给红色方块设置上相对定位,相对于自身向右偏移50px,向下偏移50px

css复制代码.content_red {
    background-color: red;
    position: relative;
    left: 50px;
    top: 50px;
}

三、absolute

absolute 是绝对定位,是的指让元素相对于 static 定位之外的第一个父元素进行定位,分为两种情况

  1. 设置了 absolute 的元素如果存在有父元素设置了 position 属性为 relative 或者absolute,此时该元素就以这些父元素来进行定位
  2. 如果没有设置了 position 属性为 relative 或者 absolute 父元素,则此时相对于 body 进行定位

absolute 是生成的绝对定位的元素,是会脱离了文本流的,即在文档中已经不占据位置,常用于结合 relative 来使用

css复制代码<div class="fu">
    <div class="son">
        子元素
    </div>
</div>
.fu {
        height: 500px;
        width: 500px;
        background-color: burlywood;
        position: relative;
 }
.son {
        height: 100px;
        width: 100px;
        background-color: red;
         position: absolute;
        top:50%;
        left: 50%;
        transform: translate(-50%,-50%);
}

四、fixed

fixed 是一种特殊的绝对定位,也会脱离文档流,只不过 fixed 的元素是固定相对与 body 来定位的

五、sticky

sticky 是粘性定位,可以说是相对定位 relative 和固定定位 fixed 的结合体,一开始是没有脱离文档流的,但是当元素距离其父元素的距离达到 sticky 粘性定位的要求时 position:sticky 这时的效果相当于 fixed 定位,固定到适当位置,脱离了文档流

html复制代码<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 粘性定位 */
        /* 粘性定位可以被认为是相对定位和固定定位的混合。元素在跨越特定值前被认为是相对定位,之后为固定定位 */
        *{
            padding: 0;
            margin: 0;
        }
        body{
            height: 2000px;
        }
        div{
            text-align: center;
            line-height: 40px;
        }
        .header{
            height: 40px;
            width: 100%;
            background-color: yellow;
            position: fixed;
            top: 0;
        }
        .banner{
            height: 80px;
            background-color: rosybrown;
            margin-top: 40px;
        }
        .nav{
            height: 40px;
            background-color: royalblue;
            position: sticky;
            top:40px;
        }
    </style>
</head>

<body>
    <div class="header">
        头部
    </div>
    <div class="banner">
        banner区域
    </div>
    <div class="nav">
        导航栏
    </div>
</body>

</html>

当向下滚动,导航栏具体顶部40px的时候,就会变成固定定位

六、inherit

inherit 就是继承父元素的 position 属性

作者:曼联的小黑熊
链接:https://juejin.cn/post/7078476624831709192

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码