【前端|CSS系列第3篇】CSS盒模型、浮动及定位

news2024/9/20 12:35:05

在这里插入图片描述
在前端开发中,CSS是一项重要的技术,用于控制网页的样式和布局。在本系列的第三篇文章中,我们将学习CSS的盒模型、浮动以及定位,这些概念和技术在页面布局中起着至关重要的作用。通过本文的学习,希望能够帮助大家更好地理解和运用这些关键概念。

目录

  • 1. CSS盒模型
    • 1.1 盒模型概述
    • 1.2 内容区域
    • 1.3 内边距
    • 1.4 边框
    • 1.5 外边距
    • 1.6 盒模型示例代码
  • 2. 浮动与清除浮动
    • 2.1 浮动概述
    • 2.2 浮动的属性
    • 2.3 清除浮动的方法
    • 2.4 浮动与布局示例代码
  • 3. 定位与层叠
    • 3.1 定位概述
    • 3.2 相对定位
    • 3.3 绝对定位
    • 3.4 固定定位
    • 3.5 层叠顺序
    • 3.6 定位与层叠示例代码
  • 总结

1. CSS盒模型

1.1 盒模型概述

CSS盒模型是用来描述HTML元素在页面中所占空间的模型。每个元素都被看作是一个矩形的盒子,包含内容区域、内边距、边框和外边距四个部分。理解盒模型对于控制元素的大小、边距和布局非常重要。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RsC7fxKK-1688233332891)(/Users/adherezheng/mynote/note/csdn/css/assets/image-20230702013808175.png)]

1.2 内容区域

内容区域是盒模型中实际包含内容的部分,它的大小由元素的宽度和高度属性决定。

/* 设置一个固定宽度和高度的盒子 */
 .box {
    width: 200px;
    height: 150px;
    background-color: purple;
  }

在这里插入图片描述

1.3 内边距

内边距是内容区域与边框之间的距离,可以用来控制内容与边框之间的空白区域。

/* 设置盒子的内边距 */
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 设置一个固定宽度和高度的盒子 */
        .box {
            padding: 10px;
        }

        .box1 {
            width: 200px;
            height: 150px;
            background-color: purple;

        }
    </style>
</head>

<body>
    <div class="box">
        <div class="box1"></div>
    </div>
</body>

</html>

在这里插入图片描述

1.4 边框

边框是围绕内容区域和内边距的线条,可以用来定义元素的边界和样式。

/* 设置盒子的边框 */
.box {
  border: 1px solid #000;
}

在这里插入图片描述

1.5 外边距

外边距是盒子与其他元素之间的距离,可以用来控制元素之间的间距和布局。

/* 设置盒子的外边距 */
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 100px;
            height: 100px;
            background-color: blue;
            margin: 10px;
        }

        .box1 {
            width: 100px;
            height: 100px;
            background-color: purple;
        }
    </style>
</head>

<body>
    <div class="box"></div>
    <div class="box1"></div>
</body>

</html>

在这里插入图片描述

1.6 盒模型示例代码

下面是一个示例代码,演示了如何使用盒模型属性来布局一个简单的页面结构。

<!DOCTYPE html>
<html>
<head>
  <style>
    .box {
      width: 200px;
      height: 150px;
      padding: 10px;
      border: 1px solid #000;
      margin: 10px;
    }
  </style>
</head>
<body>
  <div class="box">Hello, CSS Box Model!</div>
</body>
</html>

在这里插入图片描述

2. 浮动与清除浮动

2.1 浮动概述

浮动是一种布局方式,可以使元素脱离文档流,向左或向右移动,其他元素则围绕其周围进行布局。常用于实现多栏布局或图文混排等效果。

2.2 浮动的属性

/* 设置元素浮动 */
.element {
  float: left;
}

2.3 清除浮动的方法

浮动元素对父元素的高度和其他元素的布局会产生影响,因此需要使用清除浮动的方法来解决这个问题。

/* 清除浮动 */
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

2.4 浮动与布局示例代码

下面是一个示例代码,演示了如何使用浮动来实现一个简单的多栏布局。

<!DOCTYPE html>
<html>

<head>
    <style>
        .left-column {
            float: left;
            width: 200px;
            height: 100px;
            background-color: black;
        }

        .right-column {
            float: left;
            width: 300px;
            height: 100px;
            background-color: purple;
        }

        .clearfix::after {
            content: "";
            display: block;
            clear: both;
        }
    </style>
</head>

<body>
    <div class="left-column">
        <!-- 左侧内容 -->
    </div>
    <div class="right-column">
        <!-- 右侧内容 -->
    </div>
    <div class="clearfix"></div>
</body>

</html>

在这里插入图片描述

3. 定位与层叠

3.1 定位概述

定位是一种布局方式,用于控制元素在页面中的精确位置。常用的定位方式有相对定位、绝对定位和固定定位。

3.2 相对定位

相对定位是相对于元素在文档流中的初始位置进行定位,不会脱离文档流。

/* 设置元素相对定位 */
.element {
  position: relative;
  top: 20px;
  left: 30px;
}

在这里插入图片描述

3.3 绝对定位

绝对定位是相对于最近的具有定位属性的父元素进行定位,如果没有定位的父元素,则相对于整个页面进行定位,会脱离文档流。

/* 设置元素绝对定位 */
.element {
  position: absolute;
  top: 0;
  right: 0;
}

在这里插入图片描述

3.4 固定定位

固定定位是相对于浏览器窗口进行定位,元素会固定在页面的某个位置,不会随页面滚动而移动。

/* 设置元素固定定位 */
.element {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

在这里插入图片描述

3.5 层叠顺序

层叠顺序是指元素在重叠时的显示顺序,可以使用z-index属性来控制元素的层叠顺序。

/* 设置元素层叠顺序 */
.element {
  z-index: 1;
}

3.6 定位与层叠示例代码

下面是一个示例代码,演示了如何使用定位和层叠来实现一个简单的悬浮框效果。

<!DOCTYPE html>
<html>
<head>
  <style>
    .container {
      position: relative;
      width: 300px;
      height: 200px;
    }

    .box {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 200px;
      height: 150px;
      background-color: #f2f2f2;
      border: 1px solid #000;
      z-index: 1;
    }
  </style>
</head>
<body>
  <div class="container">
    <div class="box">
      <!-- 悬浮框内容 -->
    </div>
  </div>
</body>
</html>

在这里插入图片描述

总结

通过本篇博客的学习,我们详细介绍了CSS的盒模型、浮动与清除浮动以及定位与层叠等常用样式属性。这些知识点对于前端开发至关重要,能够帮助大家掌握网页布局的基本技巧。希望通过实例代码的演示和详细的讲解,读者能够更加深入地理解这些概念,并能够灵活运用于实际项目中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/709156.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里云远程仓库环境安装

记录一些基本的命令&#xff1a; 一、apt-get&#xff0c;是一条linux命令&#xff0c;适用于deb包管理式的操作系统&#xff08;例如Ubuntu系统&#xff09;&#xff0c;主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。 // 常用命令&#xff1a; ap…

沐风老师3DMAX虚线对象插件Dashed使用方法详解

3DMAX虚线对象插件Dashed教程 Dashed虚线对象插件&#xff0c;用于沿拾取路径创建虚线&#xff08;或实线&#xff09;几何体对象 【主要特点】 -更多实用参数可以调节。 -沿着样条曲线测量距离值&#xff08;如&#xff1a;笔划长度、间距、分段长度等&#xff09;&#xff…

MySql的MVCC_存储引擎_历史_开发模式

概览 一. 多版本并发控制(MVCC)1.概述2.InnoDB的MVCC 二.MySql的存储引擎 一. 多版本并发控制(MVCC) 1.概述 可以认为MVCC是行级锁的一个变种,其在很多情况下避免了加锁操作&#xff0c;因此开销更低。 不同存储引擎的MVCC实现是不同的&#xff0c;但大部分实现了非阻塞的读…

Nginx(5)nginx的负载均衡

负载均衡 负载均衡的原理及处理流程负载均衡的作用 负载均衡常用的处理方式Nginx七层负载均衡Nginx七层负载均衡的指令Nginx七层负载均衡的实现流程 负载均衡状态负载均衡策略负载均衡案例案例一&#xff1a;对所有请求实现一般轮询规则的负载均衡案例二&#xff1a;对所有请求…

红色通信史(二):半部电台起家

上一期&#xff0c;我给大家介绍了“四一二”反革命政变后&#xff0c;我党在上海开通了第一部秘密电台的过程。 秘密电台的开通&#xff0c;标志着我党通信事业正式起步。然而&#xff0c;没过多久&#xff0c;顾顺章叛变&#xff0c;给上海党组织带来了极大的破坏。于是&…

事务

事务回顾MySQL事务Spring事务实现编程式事务实现&#xff1a;声明式事务 Transactional 注解作用范围及名称&#xff08;value/transactionManager&#xff09;隔离级别&#xff1a;isolation超时时间&#xff1a;timeout修改只读事务指定异常异常捕获情况 事务失效场景Transac…

高等数学II-知识点(1)——原函数的概念、不定积分、求原函数的两种常用方法 (凑微分法、第二换元法)、分部积分法、有理函数原函数求法、典型三角函数原函数求法

目录 原函数的概念 不定积分 定义 不定积分的基本积分公式 不定积分的运算法则 求原函数的两种常用方法 第一换元法&#xff08;凑微分法&#xff09; 第二换元法 分部积分法 有理函数原函数求法 典型三角函数原函数求法 原函数的概念 设在区间上有定义&#xff0c…

Python3 实例(一) | 菜鸟教程(十九)

目录 一、Python Hello World 实例 二、 Python 数字求和 &#xff08;一&#xff09;以下实例为通过用户输入两个数字&#xff0c;并计算两个数字之和&#xff1a; &#xff08;二&#xff09;两数字运算&#xff0c;求和我们使用了加号 ()运算符&#xff0c;除此外&#…

GB51309实施后对于消防应急照明和疏散指示系统在城市隧道应用中的影响

安科瑞 崔丽洁 【摘要】&#xff1a;应急照明和疏散指示系统被广泛运用于城市隧道、楼宇建筑、地下管廊等各个方面。当隧道这类特殊建筑内出现火灾或事故时&#xff0c;可靠的应急照明和疏散指示系统对于人员的安全逃生有着重要的作用。随着GB51309-2018《消防应急照明和疏散指…

java从入门到起飞(三)——三大结构(顺序结构、分支结构、循环结构)

目录 前提顺序结构分支结构if选择语句switch语句 循环结构for循环语句格式while循环语句格式do…while循环语句三种循环的区别三种循环的区别&#xff1a;for和while的区别&#xff1a;死循环格式&#xff1a; 前提 三大结构也成为流程控制语句&#xff0c;分为三大类&#xff…

flask+uwsgi+docker+nginx 云服务器部署测试平台

flaskuwsgidockernginx 云服务器部署测试平台 开发环境 本次主要是在腾讯云上进行部署&#xff0c;系统是CentOS 7.9 64位&#xff0c;主要使用的软件如下&#xff1a; Python 3.9.5 Pycharm Flask1.0.2 Mysql 5.7 nginx uwsgi 一 安装Nginx 1.更新yum 源 sudo rpm -ivh …

基于Java+Swing+Mysql图书信息管理系统

基于JavaSwingMysql图书信息管理系统 一、系统介绍二、功能展示1.主页2.新增图书信息3.删除图书信息 三、数据库四、其他系统实现五、获取源码 一、系统介绍 该系统实现了查看图书列表、新增图书信息、删除图书信息 运行环境&#xff1a;eclipse、idea、jdk1.8 二、功能展示…

TCP的三次握手,四次挥手

1.TCP协议介绍 传输控制协议&#xff08;TCP&#xff0c;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff0c;是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。由IETF的RFC 793 [1] 定义…

云之道知识付费v2 3.1.1独立版小程序系统源码

云之道知识付费v2 3.1.1独立版小程序系统源码 很不错的一款知识丰富小程序&#xff0c;感兴趣的可以自己下载搭建尝试一下。

Java官方笔记13集合

Storing Data The Collections Framework is the most widely used API of the JDK. 集合不是数据类型&#xff0c;它是JDK的API&#xff0c;可以用来存储数据等&#xff0c;相当于数据结构。 the Collections Framework is a set of interfaces that models different way of …

chatgpt赋能python:用Python做中文词云

用Python做中文词云 介绍 中文词云是一种常见的数据可视化方式&#xff0c;通过将文本中出现频率较高的关键词以图形的形式展现出来&#xff0c;让人一眼就能了解文本内容的主题和关键词。在搜索引擎优化&#xff08;SEO&#xff09;方面&#xff0c;中文词云也常被用来帮助分…

【python】使用Antlr4实现识别sql中的表或视图名

前言 先上成果预览图吧 作为一个数据库sql开发者,肯定有很多人和我一样,想要有一个工具,能传入任意sql,解析出sql中的所有表。 我之前有一篇文章【AIO】将任意查询sql转换成带远程数据库DBLINK的sql 中就提到了,使用纯文本硬解析会存在很多不确定因素,比如oracle新版本…

截取屏幕中指定区域的图像pyautogui.screenshot(区域)

【小白从小学Python、C、Java】 【等级考试500强双证书考研】 【Python-数据分析】 截取屏幕中指定区域的图像 pyautogui.screenshot(区域) [太阳]选择题 关于以下代码说法错误的是&#xff1a; import pyautogui print("【执行】pyautogui.screenshot(region(0,0,2…

麦语言入门~001课

麦语言是一种编程语言&#xff0c;它是由麦肯锡公司开发的一种专门用于数据分析和统计建模的语言。麦语言具有类似于R和Python的功能&#xff0c;并提供了一组丰富的数据处理、统计分析和机器学习的工具。麦语言主要用于解决复杂的商业和统计分析问题&#xff0c;并被广泛应用于…

CRM系统能帮助外贸企业提高哪些工作效率?

外贸企业的业务和客户遍布世界各地&#xff0c;更涉及不同的语言和文化。因此&#xff0c;管理客户信息、提高服务质量、扩大市场份额成为了外贸企业亟待解决的问题。针对这些情况&#xff0c;不少企业开始使用CRM客户管理系统。下面说说&#xff0c;外贸企业为什么要用CRM系统…