首页 > 其他分享 >13 CSS 的position属性

13 CSS 的position属性

时间:2023-08-23 10:46:11浏览次数:40  
标签:定位 13 right top 元素 position CSS 200px

13 CSS 的position属性

就像photoshop中的图层功能会把一整张图片分层一个个图层一样,网页布局中的每一个元素也可以看成是一个个类似图层的层模型。层布局模型就是把网页中的每一个元素看成是一层一层的,然后通过定位属性position对元素进行定位摆放,最终实现网页的布局。

定位属性position有4个值,分别是静态定位(static)、相对定位(relative)、绝对定位(absolute)和固定定位(fixed)。默认就是static。所以我们略过。

元素设置了定位以后,还要依靠4个方位属性来进行定位摆放。

方位属性:

/*
top:让元素相对于指定目标的顶部偏移指定的距离。
  例如: top:10px; 表示距离顶部10像素

right:让元素相对于指定目标的右边偏移指定的距离。
  例如: right:10px; 表示距离顶部10像素

bottom:让元素相对于指定目标的底部偏移指定的距离。
  例如: bottom:10px; 表示距离顶部10像素

left:让元素相对于指定目标的左边偏移指定的距离。
  例如: left:10px; 表示距离顶部10像素
*/
  • 相对定位(relative)

相对定位就是在正常文档流中,元素相对于自身位置使用left、right、top、bottom属性进行定位偏移。

.c1{
            width: 200px;
            height: 200px;
            background-color: indianred;

        }

        .c2{
            width: 200px;
            height: 200px;
            background-color: orange;
            position: relative;
            left: 200px;
            top: 200px;


        }

        .c3{
            width: 200px;
            height: 200px;
            background-color: lightblue;


        }
  • 绝对定位(absolute)

绝对定位就是将元素脱离文档流,然后使用left、right、top、bottom属性相对于其最接近的一个具有定位属性的父级元素进行绝对定位,如果不存在这样的父级元素,则默认是相对于body元素进行绝对定位。
轮播图案例:

<!DOCTYPE HTML>
<html lang="en-US">
  <head>
        <meta charset="utf8">
        <style>

            *{
                margin: 0;
                padding: 0;
            }

            .lunbo{
                width: 590px;
                height: 470px;
                border: 1px solid rebeccapurple;
                margin: 100px auto;
                position: relative;
            }

            .lunbo ul{
                list-style: none;
            }

            .lunbo .img li{
                position: absolute;
                top: 0;
                left: 0;
            }

            .lunbo .btn li{

                font-size: 25px;
                width: 40px;
                height: 40px;
                background-color: gray;
                text-align: center;
                line-height: 40px;
                border-bottom-right-radius: 50%;
                border-top-right-radius: 50%;
                color: white;

                position: absolute;
                top: 50%;
                margin-top: -20px;

            }

            .lunbo .left_btn{
                left: 0;
            }

            .lunbo .right_btn{
                right: 0;
            }
        </style>
  </head>
  <body>


  <div class="lunbo">
      <ul class="img">
          <li><a href=""><img src="imgs/1.jpg" alt=""></a></li>
          <li><a href=""><img src="imgs/2.jpg" alt=""></a></li>
          <li><a href=""><img src="imgs/3.jpg" alt=""></a></li>
          <li><a href=""><img src="imgs/4.jpg" alt=""></a></li>
          <li><a href=""><img src="imgs/5.jpg" alt=""></a></li>
      </ul>
      <ul class="btn">
          <li class="left_btn"> < </li>
          <li class="right_btn"> > </li>
      </ul>
  </div>
  </body>
</html>
  • 固定定位(fixed)
    固定定位与绝对定位有点相似,但是固定定位是使用left、right、top、bottom属性相对于整个浏览器的窗口进行定位,而不再相对于某个HTML页面元素了,所以当元素使用了固定定位以后,就算页面的滚动条滚动了,固定定位的元素也不会变化位置。也就是说固定定位是相对于窗口的定位,不受文档流的影响了。
<!DOCTYPE HTML>
<html lang="en-US">
  <head>
      <meta charset="utf8">
    <style>

        body{
            margin: 0;
        }

        .c1{
            width: 100%;
            height: 2000px;
            background-color: lightgray;
        }

        .c2{
            width: 200px;
            height: 60px;
            background-color: yellowgreen;
            text-align: center;
            line-height: 60px;
            position: fixed;
            right: 20px;
            bottom: 20px;
        }

    </style>
  </head>
  <body>

   <div class="c1"></div>
   <div class="c2">返回顶部</div>

  </body>
</html>

标签:定位,13,right,top,元素,position,CSS,200px
From: https://www.cnblogs.com/zczhaod/p/17650559.html

相关文章

  • 12 CSS 的float属性
    12CSS的float属性流动布局流动模型(Flow),即文档流,浏览器打开HTML网页时,从上往下,从左往右,逐一加载。在正常情况下,HTML元素都会根据文档流来分布网页内容的。文档流有2大特征:①块状元素会随着浏览器读取文档的顺序,自上而下垂直分布,一行一个的形式占据页面位置。②行内元素......
  • CSS
    引入方式41.内部样式<style>div{font-size:medium;color:red;}</style><div>helloworld</div>2.外部样式创建css文件通过link标签引入<linkrel="stylesheet"href="style.css">&......
  • 自我介绍:20231301 周子昂
    自我介绍大家好!我叫周子昂,来自北京。(0)照片(1)形容词周:思绪“周”密,严谨踏实做事之前喜欢整体思考,有一定的布局。尽可能在做事时脚踏实地,认真仔细。事后反思总结经验教训,以便下次更好。子:谦谦君“子”,温和有礼待人接物有基本的礼仪与尊重。在有能力的范围内尽可能地帮助......
  • CF1342F Make It Ascending
    CF1342FMakeItAscending题意给予一个包含\(n\)个元素的数组\(a\),你可以进行以下操作:选择两个不同的元素\(a_i,a_j\)(\(1\lei,j\len\),\(i\nej\))将\(a_j\)的值加上\(a_i\),并移除\(a\)中的第\(i\)个元素。求使\(a\)数组严格递增(对于\(1\lei<n\),有\(a_i<a_{i+1}\))......
  • 关于 SAP UI5 预定义的 CSS Margin class
    与padding不同,margin是透明的,不是控件可单击区域的一部分,并且它们与相邻边距折叠在一起,这意味着它们不会相互添加。例如,有两个相邻的32像素margin,则结果是仅显示一个32像素边距,而不是64像素的空间。SAPUI5中预定义的所有边距都支持从右到左(RTL)语言:当向左侧添加边......
  • 13 Linux 蜂鸣器实验
    一、蜂鸣器驱动原理  常用蜂鸣器分两种,有源蜂鸣器和无源蜂鸣器。  它们俩的区别:有源蜂鸣器具有内置的振荡器和驱动电路,无源蜂鸣器没有;源蜂鸣器只需简单的数字信号来控制,无源蜂鸣器需要外部电路或微控制器来提供特定频率的脉冲信号。  在Linux下做的工作:①设备树中添加......
  • 什么是 SAP UI5 中的预定义 CSS 响应式边距(Responsive Margins)
    SAPUI5是SAP公司的开源前端开发框架,用于构建现代、移动优先的Web应用程序。预定义的CSS响应式边距是UI5框架中的一个重要特性,它可以帮助开发人员轻松管理和控制应用程序中不同元素之间的间距,以适应不同的屏幕大小和设备类型。本文将详细介绍预定义的CSS响应式边距的概念、用途以......
  • css网页整页变灰代码
    css网页整页变灰代码html{filter:grayscale(100%);-webkit-filter:grayscale(100%);-moz-filter:grayscale(100%);-ms-filter:grayscale(100%);-o-filter:grayscale(100%);filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)......
  • 13.Linux中fork函数详解(附图解与代码实现)
    13.Linux中fork函数详解(附图解与代码实现)我们先来看个代码,判断一下这个代码的输出结果会是什么样的,先不要去看运行结果,判断好后再去看看是否和你的预期结果一致。#include<stdio.h>#include<unistd.h>#include<stdlib.h>#include<string.h>intmain(void){ pid_tpid; ......
  • 20230713 java.util.concurrent.ExecutorService
    介绍java.util.concurrent.ExecutorServicepublicinterfaceExecutorServiceextendsExecutorAPIshutdownshutdownNowisShutdownisTerminatedawaitTerminationsubmitFuture<?>submit(Runnabletask);<T>Future<T>submit(Runna......