CSS定位布局详解

简介: CSS定位使你可以将一个元素精确地放在页面上指定的地方。联合使用定位和浮动,能够创建多种高级而精确的布局。其中,定位布局共有4种方式。固定定位(fixed)。相对定位(relative)。绝对定位(absolute)。静态定位(static)


1.定位布局概述


CSS定位使你可以将一个元素精确地放在页面上指定的地方。联合使用定位和浮动,能够创建多种高级而精确的布局。其中,定位布局共有4种方式。固定定位(fixed)。相对定位(relative)。绝对定位absolute)。静态定位(static



2.固定定位:fixed


我们可以使用“position:fixed;”来实现固定定位。所谓的固定定位,指的是被固定的元素不会随着滚动条的拖动而改变位置。

以下演示一个固定定位的效果:


<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>IMUSTCTF</title>
  <style type="text/css">
     #first {
      width: 120px;
      height: 1800px;
      background-color: orange;
     }
     #second {
      position: fixed;
      top: 30px;
      left: 160px;
      width: 50px;
      height: 50px;
      background-color: hotpink;
     }
  </style>
</head>
<body>
  <div id="first"></div>
  <div id="second"></div>
</body>
</html>


我们尝试拖动浏览器的滚动条,其中,有固定定位的div元素不会有任何位置改变,但没有定位的div元素会发生位置改变


3.相对定位:relative


在CSS中,我们可以使用“position:relative;”来实现相对定位。所谓的相对定位,指的是该元素的位置是相对于它的原始位置计算而来的


<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>IMUSTCTF</title>
  <style type="text/css">
   div {
    width: 100px;
    height: 100px;
    background-color: pink;
    margin-bottom: 10px;
   }
   /* 演示相对定位的效果 */
   #show {
    position: relative;
    top: 20px;
    left: 40px;
   }
  </style>
</head>
<body>
  <div></div>
  <div id="show"></div>
</body>
</html>



4.绝对定位:absolute


在CSS中,我们可以使用“position:absolute;”来实现绝对定位。绝对定位在几种定位方式中使用最为广泛,因为它能够很精确地把元素定位到任意你想要的位置


默认情况下,固定定位和绝对定位的位置是相对于浏览器而言的,而相对定位的位置是相对于原始位置而言的🙌

演示:


<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>IMUSTCTF</title>
  <style type="text/css">
     div {
      width: 100px;
      height: 100px;
      background-color: pink;
      margin-bottom: 10px;
     }
     /* 演示绝对定位的效果 */
     #show {
      position: absolute;
      top: 20px;
      left: 40px;
     }
  </style>
</head>
<body>
  <div></div>
  <div id="show"></div>
</body>
</html>



5.静态定位:static


在默认情况下,元素没有指定position属性时,这个元素就是静态定位的。也就是说,元素position属性的默认值是static


目录
相关文章
|
22天前
|
前端开发 开发者 容器
彻底学会CSS grid网格布局
【4月更文挑战第1天】 彻底学会CSS grid网格布局
16 0
|
13天前
|
前端开发 开发者 容器
【掰开揉碎】详解 CSS3 Grid 布局
【掰开揉碎】详解 CSS3 Grid 布局
N..
|
1月前
|
前端开发 容器
DIV+CSS网页布局
DIV+CSS网页布局
N..
8 0
|
1月前
|
前端开发 UED 开发者
探索前端开发中的CSS布局技巧
本文将介绍一些在前端开发中常用的CSS布局技巧,包括盒模型、浮动布局、弹性布局和栅格系统等。通过学习这些技巧,开发者可以更加灵活地控制页面的布局,提升用户体验和界面的美观性。
|
1月前
|
前端开发 JavaScript 开发者
编程笔记 html5&css&js 014 网页布局框架
编程笔记 html5&css&js 014 网页布局框架
|
1月前
|
前端开发 开发者
编程笔记 html5&css&js 013 HTML布局
编程笔记 html5&css&js 013 HTML布局
|
2月前
|
容器
请解释一下 CSS3 的 Flexbox(弹性盒布局模型), 以及适用场景?
请解释一下 CSS3 的 Flexbox(弹性盒布局模型), 以及适用场景?
|
2月前
|
前端开发 JavaScript
css制作瀑布流布局
css制作瀑布流布局
17 0
|
2月前
|
Web App开发 存储 前端开发
【JavaEE初阶】 CSS相关属性,元素显示模式,盒模型,弹性布局,Chrome 调试工具||相关讲解
【JavaEE初阶】 CSS相关属性,元素显示模式,盒模型,弹性布局,Chrome 调试工具||相关讲解
|
2月前
|
移动开发 前端开发 JavaScript
H5+CSS3+JS逆向前置——5、DIV+CSS百分比布局
H5+CSS3+JS逆向前置——5、DIV+CSS百分比布局
38 0