CSS 浮动

浮动


在标准流当中,元素或者标签在页面上摆放的时候会出现不如意的地方。要想解决这些问题可以采用脱离标准流的方式来进行解决这些问题,脱离标准流也称为脱离文档流。

脱离标准流的解决方式有三种,一种是浮动,另外一种是固定定位,最后就是绝对定位。浮动就是其中的一种解决方案。

浮动:增加一个浮层来放置内容

 浮动的原理:

  1. 浮动以后使元素脱离了文档流
  2. 浮动只有在右浮动,没有上下浮动

通过浮动来解决以前在标准流当中遇到的那些问题,比如两个img标签放在一起会有些空隙的问题。

 

 

元素向左浮动


脱离文档流之后,元素相当于在页面上面增加一个浮层来放置内容。此时可以理解为有两层页面,一层是底层的原页面,一层是脱离文档流的上层页面,所以会出现折叠现象。

脱离文档流的情况下会出现压盖的现象,因为这是两层。底层绿色的是标准流,上面黄色是脱离标准流表现形式。可以看到默认情况下是从上到下进行摆放的。

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8"><title>首页</title><style>.container{width: 400px;height: 400px;background-color: blueviolet;}.box{width: 200px;height: 200px;background-color: blanchedalmond;}</style>
</head>
<body><div class="box">box</div>
<div class="container">container</div></body></html>

如果是向左浮动,那么上面的盒子会盖在紫色的盒子上面。下面的盒子属于在标准流当中的盒子,而上面的盒子属于脱离标准流的盒子,它会在在下面的盒子上面再覆盖一层。

现在的页面有两层,一层在下面,一层在上面,这样就不会产生在标准流当中的一些问题。

       .container{width: 400px;height: 400px;background-color: blueviolet;}.box{width: 200px;height: 200px;background-color: blanchedalmond;float: left;}

  默认情况下,两张照片之间也是有间隙的,为了消除间隙,可以使用float。

       img{width: 200px;}<img src="1.jpg">
<img src="1.jpg">

       img{width: 200px;float: left;}

       img{width: 200px;float: left;}

在脱离文档流之后再去布局, 会解决某些问题。并不是都需要脱离文档流,只是遇到了相应的问题的情况下需要。正常情况下正常布局就行了。

 元素向右浮动


    <style>.container{width: 400px;height: 400px;background-color: blueviolet;}.box{width: 200px;height: 200px;background-color: blanchedalmond;float: right;}</style>

<div class="box">box</div>
<div class="container">container</div>

 

 

 所有元素向左浮动


虽然看起来像只有一层,但是浮动起来了就在第二层了,在浮动层,盖上了那一层。在那一层三个元素水平摆放了。

导航是水平摆放的

       ul li{float: left;} <ul><li>导航1</li><li>导航2</li><li>导航3</li>
</ul>

元素之间空隙如何变的大一些,可以使用外边距使其变的大一些,这个时候就可以使用margin。这利用盒子模型将其外边距撑开,将导航横向摆放。

<ul><li>导航1</li><li>导航2</li><li>导航3</li>
</ul>ul li{float: left;margin: 0 40px;} 

<ul><li><a href="#">导航1</a></li><li><a href="#">导航2</a></li><li><a href="#">导航3</a></li>
</ul>

横向摆放,当元素不同的时候,元素宽度不够的情况下,在空间不够的情况下会将其挤到下面来。盒子在横向摆放的时候要考虑其宽度,是不是够了,在不够的情况下会被挤到下面去。

浮动是通过float属性来进行定义的,可以向左或者向右浮动。无论向左还是向右浮动都是脱离文档流,它会在标准流的上面再来一层,而那一层来放置浮动的元素。

由于存在两层,标准的那一层和浮动的那一层会出现压盖的现象。但是全部脱离文档流就不会出现压盖了,那么就在同一层了。在宽度不够的情况下会被挤到第二行,因为默认是横向摆放的。

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

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

相关文章

如何读懂磁滞回曲线(磁化曲线、退磁曲线、内禀曲线)

硬磁性材料&#xff0c;如钕铁硼磁钢&#xff0c;有两个显著特征&#xff0c;一是在外磁场作用下能被强烈磁化&#xff0c;另一个是磁滞&#xff0c;即撤走外磁场后硬磁材料仍保留磁化状态&#xff0c;下图为硬磁材料的磁感应强度B与磁化场强度H之间的关系曲线。 当磁场按Hs→H…

算法——贪心

「贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优」 贪心无套路 1. 分发饼干 贪心策略&#xff1a; &#xff08;1&#xff09;局部最优就是大饼干喂给胃口大的&#xff0c;充分利用饼干尺寸喂饱一个&#xff0c;全局最优就是喂饱尽可能多的小孩 &#xff08…

Linux chapter1 常用命令 cp

note 1 : netstat、curl、ip、nmap、dig 这些都是常用的网络诊断工具&#xff0c;它们的全称如下&#xff1a; netstat&#xff1a;Network Statistics&#xff0c;网络统计&#xff0c;用于显示网络连接&#xff0c;路由表&#xff0c;网络接口统计等网络信息。curl&#xf…

Kali Linux 更换优质国内源

文章目录 环境说明1 Kali Linux 源简介2 Kali Linux 更换国内源 环境说明 操作系统&#xff1a;kali-linux-2024.1-installer-amd64 1 Kali Linux 源简介 所谓的 Kali Linux 源&#xff0c;你可以将它理解为软件仓库&#xff0c;系统通过它安装和更新软件&#xff1b;源的服务…

nodeJs 学习

常用快捷键 二、fs模块 回调函数为空&#xff0c;则表示写入成功&#xff01; 练习 const fs require(fs); fs.readFile(../files/成绩.txt, utf-8, (err, dataStr) > {if (err) {console.log(读取失败);return err;}console.log(读取成功);const arr dataStr.split( )co…

RPC 和 序列化

RPC 1 RPC调用流程 1.1 clerk客户端调用远程服务 Clerk::PutAppend() raftServerRpcUtil::PutAppend() raftServerRpcUtil是client与kvserver通信的入口&#xff0c; 包含kvserver功能的一对一映射&#xff1a;Get/PutAppend&#xff0c;通过stub对象——raftKVRpcProctoc:…

web前端之实现复选功能、repeat

MENU 1、原生实现1.1、html部分1.2、JavaScript部分1.3、css部分1.4、效果图 2、uniApp实现2.1、html部分2.2、JavaScript部分2.3、css部分2.4、效果图 1、原生实现 1.1、html部分 暂时为null&#xff0c;后续会补充。1.2、JavaScript部分 暂时为null&#xff0c;后续会补充…

算法第二十九天-森林中的兔子

森林中的兔子 题目要求 解题思路 重点&#xff1a;某个兔子回答x的时候&#xff0c;那么数组中最多循序x1个同花色的兔子同时回答x 我们可以通过举例子得出一下的规律&#xff1a; 我们统计数组中所有回答x的兔子的数量n&#xff1a; 若n%(x1)0&#xff0c;说明我们此时只需…

Vector[C++]

文章目录 C中的std::vector简介std::vector的特点std::vector的重要接口用法介绍1. 初始化vector 2. 添加元素push_backemplace_back 3. 访问元素operator[]back 4. 修改元素operator 5. 遍历三种&#xff0c;下标&#xff0c;迭代器&#xff0c;范围for 6. 容量和大小sizeempt…

Induction or tail-recursion

选择排序 遍历整个待排序的数组&#xff0c;从第一个元素开始。在未排序的部分中&#xff0c;找到最小&#xff08;或最大&#xff09;的元素&#xff0c;并将其与第一个元素交换位置。接着从第二个元素开始&#xff0c;重复步骤2&#xff0c;直到所有元素都被排序 迭代版 递…

Qt实现简单的五子棋程序

Qt五子棋小程序 Qt五子棋演示及源码链接登陆界面单机模式联机模式联网模式参考 Qt五子棋 参考大佬中国象棋程序&#xff0c;使用Qt实现了一个简单的五子棋小程序&#xff0c;包含了单机、联机以及联网三种模式&#xff1b;单机模式下实现了简易的AI&#xff1b;联机模式为PtoP…

OPTIONS请求(跨域预检查)

目录 一、什么是OPTIONS请求&#xff1f;二、简单请求、复杂请求三、特定的请求头、响应头 一、什么是OPTIONS请求&#xff1f; OPTIONS 请求方式是 HTTP 协议中的一种&#xff0c;主要用于 从响应头中获取服务器支持的HTTP请求方式。 OPTIONS 请求方式是 浏览级行为&#xf…

Redis命名设计

可读性和管理性 以项目名为前缀(防止key冲突)&#xff0c;用冒号分隔&#xff0c;比如项目名:表名:id zh(知乎):news_data(新闻数据):2(主键id) zh:news_data:2 精简性 key的命名&#xff0c;尽量精简&#xff0c;key的名字长度对内存的占用不可忽视&#xff0c;我们来实际…

网络编程--高并发服务器

这里写目录标题 引入场景 多进程并发服务器二级目录二级目录二级目录 多线程并发服务器二级目录二级目录二级目录 多路IO转接服务器设计思路对比引入 select函数简介参数介绍第一个参数第234参数返回值对于第234参数的应用对于最后一个参数总结 附加操作&#xff08;附加四个函…

【SRE系列之docker容器】--dockerfile镜像优化

dockerfile镜像优化 1.1 镜像优化方法 系统镜像采用ubuntu或者alpine&#xff0c;会比centos少1G左右编写业务镜像时从官网拉取镜像&#xff0c;其余配置根据业务需求再配置编写dockerfile时把不用的安装包卸载或者删除尽量减少run命令的使用&#xff08;一个run命令&#xf…

牛客题霸-SQL入门篇(刷题记录二)

本文基于前段时间学习总结的 MySQL 相关的查询语法&#xff0c;在牛客网找了相应的 MySQL 题目进行练习&#xff0c;以便加强对于 MySQL 查询语法的理解和应用。 以下内容是牛客题霸-SQL入门篇剩余的第 21-39 道题目的 SQL 代码答案。 由于涉及到的数据库表较多&#xff0c;因…

链路聚合实验(华为)

思科设备参考&#xff1a;链路聚合实验&#xff08;思科&#xff09; 一&#xff0c;技术简介 网络设备的链路聚合技术&#xff08;Link Aggregation&#xff09;是一种将多个物理链路捆绑在一起&#xff0c;形成一个逻辑链路的技术。这样做可以增加带宽、提高可靠性和实现负…

(五)OpenOFDM解码

解码 现在我们已经校正了残余 CFO&#xff0c;也校正了通道增益&#xff0c;下一步是将 FFT 输出映射到实际数据位。这是对数据包进行编码的逆过程。 解调&#xff1a;复数到位解交织&#xff1a;对每个 OFDM 符号内的比特进行混洗卷积解码&#xff1a;去除冗余并纠正潜在的位…

C语言学习笔记day8

一维数组冒泡排序法 1. 作用 将乱序的一维数组按照从小到大的顺序排列 2. 原理示意图 3. 代码 #include <stdio.h> #include <stdlib.h> #include <time.h>int main(void) {int a[5] {0};int len sizeof(a) / sizeof(a[0]);int i 0;int j 0;int tmp …