常见CSS属性(二)——浮动

news/2024/9/25 10:21:11/

一、浮动简述

        浏览器在解析html文档时,正常的顺序是从上往下、从左往右解析。这个正常的解析过程,叫做正常文档流(标准文档流),而浮动就是使得元素脱离文档流,“浮”在浏览器上。

        浮动会使元素脱离文档流,不占位置,在需要多个元素在同一行时,设置元素靠左或者靠右摆放,可以使用浮动,但使用浮动时,需要清除浮动,以免影响后续的元素。

        浮动的写法如下:

css"><style>.fl {float: left;}.fr {float: right;}
</style>

二、设置浮动

        假设现在有三个盒子,当他们正常渲染的时候,是从上往下摆放的,如下:

       此时的代码如下:

<body><style>.box {width: 100px;height: 100px;}.box-1 {background-color: red;}.box-2 {background-color: pink;}.box-3 {background-color: skyblue;}</style><div class="box box-1"></div><div class="box box-2"></div><div class="box box-3"></div>
</body>

        如果我们希望三个盒子在同一行,可以设置浮动,代码如下: 

<body><style>.box {width: 100px;height: 100px;float: left;}.box-1 {background-color: red;}.box-2 {background-color: pink;}.box-3 {background-color: skyblue;}</style><div class="box box-1"></div><div class="box box-2"></div><div class="box box-3"></div>
</body>

        效果如下:

         此时如果再放其他的元素,会被覆盖,假设我们放其他的盒子,代码如下:

<body><style>.box {width: 100px;height: 100px;float: left;}.box-1 {background-color: red;}.box-2 {background-color: pink;}.box-3 {background-color: skyblue;}.box-4 {width: 200px;height: 200px;background-color: palegreen;}</style><div class="box box-1"></div><div class="box box-2"></div><div class="box box-3"></div><div class="box-4"></div>
</body>

        效果如下,我们发现第四个盒子的一部分被覆盖了,这是因为我们设置了浮动,上面的三个盒子脱离文档流,不占位置了,此时我们需要清除浮动,防止影响浮动后续的元素。

三、清除浮动

        使用类名选择器清除浮动

        我们设置一个类clear,添加clear: both;属性,并把类名给第四个盒子(后续元素)就可以清除浮动,代码如下:

<body><style>.box {width: 100px;height: 100px;float: left;}.box-1 {background-color: red;}.box-2 {background-color: pink;}.box-3 {background-color: skyblue;}.box-4 {width: 200px;height: 200px;background-color: palegreen;}.clear {clear: both;}</style><div class="box box-1"></div><div class="box box-2"></div><div class="box box-3"></div><div class="clear box-4"></div>
</body>

        或者设置块元素用于清除浮动,添加一个div并添加类名clear,代码如下:

<body><style>.box {width: 100px;height: 100px;float: left;}.box-1 {background-color: red;}.box-2 {background-color: pink;}.box-3 {background-color: skyblue;}.box-4 {width: 200px;height: 200px;background-color: palegreen;}.clear {clear: both;}</style><div class="box box-1"></div><div class="box box-2"></div><div class="box box-3"></div><div class="clear"></div><div class="box-4"></div>
</body>

        效果如下,此时第四个盒子就不会被浮动的前三个盒子覆盖了。

                 

        设置伪类元素清除浮动 

        还可以使用伪类元素清除浮动,设置伪类元素clearfix。

css">/* 使用伪类元素清除浮动 */
.clearfix::after {/* 生成伪类元素属于行内元素 */content: "";/* 把行内元素转成块元素 */display: block;/* 清除浮动 */clear: both;
}

        如果需要清除浮动,只需要给浮动的父元素添加这个属性就可以了,代码如下:

<div class="parent clearfix"><div class="child bg-pink"></div><div class="child bg-orange"></div>
</div>

http://www.ppmy.cn/news/1502144.html

相关文章

【python】OpenCV—Faster Video File FPS

文章目录 1、需求描述2、正常方法 cv2.read3、加速方法 imutils.video.FileVideoStream4、涉及到的核心库函数4.1、imutils.video.FPS4.2、imutils.video.FileVideoStream 5、参考 1、需求描述 使用线程和队列数据结构将视频文件的 FPS 速率提高 &#xff01; 我们的目标是将…

Meta Llama 3.1:AI领域的新里程碑

Meta最近推出了其最新的AI模型Llama 3.1&#xff0c;这不仅是一个技术上的飞跃&#xff0c;更是AI领域的一次重大突破。以下是Llama 3.1的一些关键技术亮点&#xff0c;值得每一位AI爱好者和开发者关注。 参数规模与性能 Llama 3.1包含三种规格&#xff1a;8B&#xff08;80亿…

Linux并发程序设计(5):线程基础

目录 一、介绍 1.1 线程与进程的区别 1.2 线程特点 1.3 线程共享资源 1.4 线程私有资源 1.5 Linux线程库 二、相关函数 2.1 线程创建 – pthread_create 2.2 线程结束 – pthread_exit 2.3 线程查看tid函数 2.4 线程回收 2.4.1 使用pyhread_join进行线程回收 2.4.…

前端怎么本地起一个服务查看本地文件

1.安装拓展 安装 Live Server拓展 2.创建一个html文件 3.在html文件中右键选择 Open with Live Server 4.浏览器打开运行的地址&#xff0c;并去除路径&#xff0c;例如:http://127.0.0.1:5500/

20240725java的Controller、DAO、DO、Mapper、Service层、反射、AOP注解等内容的学习

在Java开发中&#xff0c;‌controller、‌dao、‌do、‌mapper等概念通常与MVC&#xff08;‌Model-View-Controller&#xff09;‌架构和分层设计相关。‌这些概念各自承担着不同的职责&#xff0c;‌共同协作以构建和运行一个应用程序。‌以下是这些概念的解释&#xff1a;‌…

Linux网络工具“瑞士军刀“集合

一、背景 平常我们在进行Linux服务器相关运维的时候&#xff0c;总会遇到一些网络相关的问题。我们可以借助这些小巧、功能强悍的工具帮助我们排查问题、解决问题。 下面结合之前的一些使用经验为大家介绍一下一些经典应用场景下&#xff0c;这个网络命令工具如何使用的。例如怎…

【OceanBase DBA早下班系列】—— obdiag 收集的 SQL Monitor Report 如何解读

1. 前言 前几天写了一篇博客&#xff0c;告诉大家在遇到慢SQL或者复杂的并行SQL的时候怎么高效的来收集【SQL Monitor Report】&#xff0c;上一篇博客的链接&#xff1a; OceanBase 社区 &#xff1b;发出去后有不少问我这份报告咋解读。今天再出一篇博客给大家介绍下如何解…

FPGA开发——D触发器的设计

1、概述 锁存器和触发器有时组合在一起&#xff0c;因为它们都可以在其输出上存储一位&#xff08;1或0&#xff09;。与锁存器相比&#xff0c;触发器是需要时钟信号&#xff08;Clk&#xff09;的同步电路。D 触发器仅在时钟从0 到 1&#xff08;上升沿&#xff09;或 1 到 …