网页布局之浮动

news2025/1/12 8:57:32

一,传统网页布局的三种方式

普通流(标准流)、浮动、定位。

二,标准流(普通流/文档流)

即为标签按照规定好的默认方式排列

1.块级元素会独占一行,从上向下顺序排列。

        常用元素:div、hr、p、h1~h6、ul、table等

2.行内元素会按照顺序,从左到右顺序排列,碰到父元素边缘则自动换行。

        常用元素:span、a、i、em等

三,为什么需要浮动

有很多布局,标准流没有办法完成,此时就可以利用浮动完成布局。

因为浮动可以改变元素标签默认的排列方式。

 网页布局第一准则:多个块状元素纵向排列找标准流,多个块级元素横向排列找浮动。

 四,什么是浮动

float属性用户创建浮动框,将其移动到一边,知道左边缘或右边缘触及包含块或另一个浮动框的边缘。

语法:

选择器  {float: 属性值;}

none (元素不浮动);left(元素向左浮动);right(元素向右浮动);

五,浮动的特性

1.浮动元素会脱离标准流(脱标)

1.1脱标:脱离标准普通流的控制(浮)移动到指定位置(动)

注:如下图,红色盒子设置了浮动,绿色盒子没有设置,则绿色盒子会直接顶替红色的位置形成重叠的效果。

1.2浮动的盒子不再保留原先的位置

2.浮动的元素会一行内显示并且元素顶部对齐

如果多个盒子都设置了浮动,它们会按照属性值一行内显示并且顶端对齐排列。

注:浮动的元素是互相贴靠在一起的(没有缝隙),如果父级宽度装不下这些浮动的盒子。多出的盒子会另起一行对齐。

3.浮动的元素会具有行内块元素的特性

任何元素都可以浮动。不管原先是什么模式的元素,添加浮动之后具有行内块元素相似的特性

如果行内元素有了浮动,则不需要转换块级/行内块元素就可以直接给高度和宽度。

3.1如果块级盒子没有设置宽度,默认宽度和父级一样宽,但是添加浮动后,它的大小根据内容决定

3.2浮动的盒子中间是没有缝隙的,紧挨着

3.3行内元素同理。

六,浮动元素经常和标准流父级搭配使用

为了约束浮动元素位置,网页布局一般采取的策略是:

先用标准流的父元素排列上下位置,之后内部子元素采取浮动排列左右位置,符合网页布局第一准则。

七,常见的网络布局

 

 

八,浮动布局的注意点

1.浮动和标准流的父盒子搭配

 先用标准流的父元素排列上下位置,之后内部子元素采取浮动排列左右位置

2.一个元素浮动了,理论上其他兄弟元素也要浮动

一个盒子里面有多个子盒子,如果其中的一个盒子浮动了,那么其他兄弟也应该浮动,以防止引起问题。

浮动的盒子只会影响浮动盒子后面的标准流,不会影响前面的标准流。

 九,清除浮动

9.1 为什么清除浮动

由于父级盒子很多情况下,不方便给高度,但是子盒子浮动又不占有位置,最后父级盒子高度为零,就会影响下面的标准流盒子。

(由于浮动元素不再占有原文档流的位置,所以它会对后面的元素排版产生影响)

 9.2清除浮动的本质

1.清除浮动的本质是清除浮动元素脱离标准流造成的影响

2.如果父盒子本身有高度,则不需要清除浮动。

3.清除浮动之后,父级就会根据浮动的子盒子自动检测高度。父级有了高度,就不会影响下面的标准流了。

语法:

选择器 { clear :属性值;}

清除浮动的策略是:闭合浮动

 9.3清除浮动的方法

1.额外标签法也称隔墙法,是W3C推荐的做法

额外标签法就是在浮动元素末尾添加一个空的标签。

注:要求这个新的空标签必须是块级元素

2.父级添加overflow属性

将其属性值设置为hiddenautoscroll

注意:是给父元素添加代码

缺点:无法显示溢出部分

3.父级添加after伪元素

(相当于后门加上一个盒子,闭合出口了)

 

4.父级添加双伪元素

(相当于前后都加入一个盒子形成闭合)

 

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

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

相关文章

多进程-day3

1、使用多进程完成两个文件的拷贝&#xff0c;父进程拷贝前一半&#xff0c;子进程拷贝后一半&#xff0c;父进程回收子进程的资源 #include <myhead.h> int main(int argc, const char *argv[]) {FILE *fp1NULL;FILE *fp2NULL;if((fp1fopen("./simple.txt",&…

如何使用CloakQuest3r获取受安全服务保护的网站真实IP地址

关于CloakQuest3r CloakQuest3r是一款功能强大的纯Python工具&#xff0c;该工具可以帮助广大研究人员获取和查看受Cloudflare和其他安全服务商保护的网站真实IP地址。 Cloudflare是一种广泛采用的网络安全和性能增强服务&#xff0c;而CloakQuest3r的核心任务就是准确识别隐…

Uibot (RPA设计软件)智能识别信息+微信群发助手(升级版)———课后练习2

解决痛点&#xff1a; Excel如何计算两个日期之间相差月数 方法&#xff1a; 1、首先打开要进行操作的Excel表格。 2、打开后选中要计算相差月数的单元格。 3、然后输入公式&#xff1a;DATEDIF(A2,B2,"m")&#xff0c;输入完成后点击回车键。 4、在弹出的窗口中&a…

[经验] 玄殿社区qq堂4.2 #笔记#媒体

玄殿社区qq堂4.2 1、玄殿 玄殿&#xff0c;位于中国北京市的紫禁城内&#xff0c;是明清两代帝王祭天的场所。玄殿前殿为皇帝向神明祭拜的地方&#xff0c;中殿为祭天的主要场所&#xff0c;后殿为宋代遗址。玄殿规模庞大&#xff0c;身为中国传统建筑的代表之一&#xff0c;…

python+selenium 定位到元素,无法点击的解决方法

今天小编就为大家分享一篇pythonselenium 定位到元素,无法点击的解决方法&#xff0c;具有很好的参考价值&#xff0c;希望对大家有所帮助。一起跟随小编过来看看吧 selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (234.75, 22)…

JS基础(语法结构变量数据类型运算符流程控制)

JS基础(语法结构/变量/数据类型/运算符/流程控制) 目录 JS基础(语法结构/变量/数据类型/运算符/流程控制)什么是js&#xff1f;注释语法语法结构引入方式【1】script标签内部直接书写js代码【2】script标签src属性引入外部js代码 JS基础数据类型变量与常量变量的定义常量的定义…

2000-2022各省产业结构高级化合理化指数(含原始数据、计算过程+计算结果)

2000-2022各省产业结构高级化合理化指数&#xff08;含原始数据、计算过程计算结果&#xff09; 1、时间&#xff1a;2000-2022年 2、指标&#xff1a;国内生产总值、第一产业增加值、第二产业增加值、第三产业增加值、总就业人数、第一产业就业人数、第二产业就业人数、第三…

Maven的初步认识

Maven 1,Maven 简介 Maven是Apache软件基金会的一个开源项目,是一个优秀的项目构建工具,他用来帮助开发者管理项目中的jar包以及jar之间的依赖关系,完成项目的编译,测试,打包发布等工作. Maven中的概念 pom(Project Object Model 项目对象模型) maven 管理项目的根目录下 都…

DOC主题 WordPress博客、文库、资讯主题

主题专为博客、自媒体、资讯类的网站设计开发&#xff0c;适合做博客、文库、帮助中心的主题。 演示站&#xff1a;做好服务 - 服务器故障、网站故障、宝塔问题快速排查与修复 截图 代码非常简练&#xff0c;主题下载地址&#xff1a;DOC主题.zip

CAN_相关的测试用例+测试方法+测试工具使用+输出测试报告

测试类型: 第一:通信测试 第二:间接网络管理测试 第三:AUTOSAR网络管理测试 第四:诊断协议栈Diva测试 第五:诊断协议补充测试 第六:Bootloader测试 第七:网…

【数据结构】队列「介绍+完整代码+调试」

1.队列 1.1队列的概念及结构 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先进先出 FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为队尾 出队列&#xff1a;进行删除操作的一端称…

忘记管理员密码

1、在/home/jenkins/config.xml中删除&#xff1a; <useSecurity>true</useSecurity><authorizationStrategy class"hudson.security.FullControlOnceLoggedInAuthorizationStrategy"><denyAnonymousReadAccess>false</denyAnonymousRea…

windows安装以及切换使用nodejs多版本

1 安装nvm nvm是一个简单的bash脚本&#xff0c;它是用来管理系统中多个已存的Node.js版本。 可以先把系统已有的node卸载掉&#xff0c;也可不卸载&#xff0c;但是以防没必要的冲突&#xff0c;尽量还是卸掉。 1.1 下载nvm 下载地址&#xff1a;https://github.com/corey…

Flutter踩坑记之四

又踩了一个大坑&#xff0c;Flutter分享到微信的&#xff0c;Android一直正常&#xff0c;苹果的不行 搞了3天&#xff0c;反复的核对苹果开发者中的相应参数设置与info的相关参数 找了很多贴子&#xff0c;最后还是通过手工加日志&#xff0c;发现在registryWxAPI的时候就返…

【Vuforia+Unity】AR03-圆柱体物体识别

1.创建数据库模型 这个是让我们把生活中类似圆柱体和圆锥体的物体进行AR识别所选择的模型 Bottom Diameter:底部直径 Top Diameter:顶部直径 Side Length:圆柱侧面长度 请注意&#xff0c;您不必上传所有三个部分的图片&#xff0c;但您需要先为侧面曲面关联一个图像&#…

笔试与面试

目录: 笔试与面试Java程序员如何应对笔试面试中的基本礼仪如何解除面试的紧张情绪如何做好自我介绍如何做好项目介绍面试中的多种问法如何让你的回答更到位被面试官问住了该怎么办面试中的一面二面与终面如何应对HR面试如何有效地与HR洽谈薪水如何了解公司福利待遇如何做好面试…

老年人手环的设计与实现

随着我国进入老年化社会&#xff0c;患有慢性病的老年人也越来越多&#xff0c;是需要时刻关注身体的生理指标以更好地知道个人的身体健康状况。过去对人体生理参数的检测都是当生病住院的时候通过医院的设备来检测&#xff0c;而人们缺乏日常的检测手段。而随着单片机和传感器…

【办公类-16-07-04】合并版“2023下学期 中班户外游戏(有场地和无场地版,一周一次)”(python 排班表系列)

背景需求&#xff1a; 把 无场地版&#xff08;贴周计划用&#xff09; 和 有场地版&#xff08;贴教室墙壁上用&#xff09; 组合在一起&#xff0c;一个代码生成两套。 【办公类-16-07-02】“2023下学期 周计划-户外游戏 每班1周五天相同场地&#xff0c;6周一次循环”&…

使用 Docker 安装 Kibana 8.4.3

使用 Docker 安装 Kibana 8.4.3 一. 安装启动 Kibana 8.4.3二. 简单使用2.1 向 Elasticsearch 发送请求2.2 搜索2.3 整体页面 前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;神的孩子都在歌唱 安装k…

【Linux系统化学习】动静态库 | 软硬链接

目录 硬链接和软链接 硬链接 软链接 动态库和静态库 静态库 静态库的生成 静态库的使用 将库打包和使用 动态库 动态库的生成 动态库的使用 库搜索路径 硬链接和软链接 硬链接 上篇文章我们说到真正找到磁盘上的文件并不是文件名&#xff0c;而是inode。其实在…