浮动与网格系统

news2024/12/23 14:40:35

控制页面布局的工具有浮动、Flexbox 和定位等,这些工具本身没有优劣支付,只不过实现布局的方式略有不同。

1 浮动

浮动元素会脱离正常的文档流,并向左或向右移动,直到它的边缘碰到包含框或另一个浮动元素的边框为止。 文本和内联元素会环绕在浮动元素的周围。

1.1 清除浮动

图 浮动元素不会增加容器高度

clear 清除浮动。

clear: both; 移动到前面浮动元素的下面,而不是侧面。

clear: left; 移动到前面左边浮动元素(向左浮动的元素)的下面。

clear: right; 移动到前面右边浮动元素(向右浮动的元素)的下面。

图 clear 属性示意图

1.2 浮动陷阱

图 浮动陷阱

浏览器会将浮动元素尽可能地放在靠上的位置。因此第3个方块不是排列在右边,而是放在了第2方块的下面。

解决方案:让第3个方块清除浮动。

图 浮动陷阱解决方案

1.3 BFC

图 浮动的设计初衷

最初创造浮动并不是用于页面布局,而多用于报纸和杂志的布局。将一个元素(通常是一张图片)拉到其容器的一侧,这样文档流能够包围它。如上图的左边的布局。

但是,如果我们想实现上图的右边的布局,通常需要为正文建立一个块级格式化上下文。

块级格式化上下文(block formatting context),它将内部的内容与外部的上下文隔开,具有以下作用:

  1. 包含了内部所有元素的上下外边距,不会跟BFC外面的元素产生外边距折叠。
  2. 包含了内部所有的浮动元素。
  3. 不会跟BFC外面的浮动元素重叠。

1.3.1 BFC 创建方式

给元素添加以下的任何属性值:

  1. float: 不为none;
  2. overflow: 不为visiable;
  3. display: inline-block、table-cell、table-caption、flex、inline-flex、grid或inline-grid。(块级容器)
  4. position: absolute 或 fixed。

1.4 网格系统

网格系统提高代码的可复用性,通过提供一系列的类名,将网页的一部分构造成行和列。它只给容器设置宽度、定位与间隔,不给网页提供视觉样式,比如颜色和边框。

设计思路是:在一个行容器里放置一个或多个列容器,列容器的类决定每列的宽度。

列的个数一般是12个,因为12能被2,3,4,6整除,组合起来足够灵活。

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

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

相关文章

损失函数篇 | YOLOv5 引入Unified-IoU 高质量目标检测IoU损失

论文地址:https://arxiv.org/pdf/2408.06636 开源代码地址:https://github.com/lxj-drifter/UIOU_files 目标检测是计算机视觉领域的重要组成部分,其效果直接由预测框的回归精度决定。作为模型训练的关键,IoU(交并比)很好地展示了当前预测框与真实框(Ground Truth)之间…

数据结构——队列的基本操作

前言 介绍 🍃数据结构专区:数据结构 参考 该部分知识参考于《数据结构(C语言版 第2版)》24~28页 🌈每一个清晨,都是世界对你说的最温柔的早安:ૢ(≧▽≦)و✨ 目录 前言 1、队列的基本概念…

Flutter 3.24 AAPT: error: resource android:attr/lStar not found.

在Android build,gradle下面,添加右边红框的代码: subprojects {afterEvaluate { project ->if (project.plugins.hasPlugin("com.android.application") ||project.plugins.hasPlugin("com.android.library")) {project.androi…

复写零——双指针算法

题目链接 复写零https://leetcode.cn/problems/duplicate-zeros/description/ 题目要求 样例 题目分析 先看示例1,题目要求将数组中所有的0,均复写一遍,且要在原数组上进行更改,多余的元素消失 但我们发现,如果双指针…

04DSP学习-利用syscfg配置EPWM

打开syscfg文件,左侧control栏中找到EPWM,点击,发现TI提供了一些帮助文档,帮助了解如何使用syscfg以及如何了解EPWM。我们结合配置过程去理解如何使用。 设计目标 使用EPWM1;增减计数;PWM频率为10kHz&…

ios内购支付-支付宝APP支付提现

文章目录 前言一、IOS内购支付(ios订单生成自己写逻辑即可)1.支付回调票据校验controller1.支付回调票据校验server 二、安卓APP支付宝支付1.生成订单返回支付宝字符串(用于app拉起支付宝,这里用的是证书模式)2.生成订…

相机基础概念

景深: 景深的定义 DOF:depth of filed 是指在摄影机镜头或其他成像器前沿能够取得清晰图像的成像所测定的被摄物体前后距离范围。光圈、镜头、及焦平面到拍摄物的距离是影响景深的重要因素。定义3:在镜头前方(焦点的前、后)有一…

PCL 投影滤波器

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 投影滤波 2.1.2 可视化 2.2完整代码 三、实现效果 PCL点云算法汇总及实战案例汇总的目录地址链接: PCL点云算法与项目实战案例汇总(长期更新) 一、…

Java的栈帧和动态链接是什么?

在 Java 的面试过程中,不可避免的一个面试题那就是 JVM,而 JVM 的面试题中,有各种,比如在堆中会被问到的关于垃圾回收机制的相关问题,在栈中会被问到入栈以及出栈的过程,来聊一下关于栈的相关问题&#xff…

【EchoMimic整合包及教程】蚂蚁集团支付宝开源了数字人技术EchoMimic,可用于虚拟主播、视频编辑等

蚂蚁集团支付宝开源了数字人技术EchoMimic,可用于虚拟主播和视频编辑。EchoMimic是一个音频驱动的肖像动画生成工具,具有丰富的表情和流畅的动作。它支持音频驱动、姿势驱动和音频与姿势混合驱动动画,并提供了易于使用的WebUI和GradioUI界面。…

三品PLM系统如何提升企业产品研发效率?

三品PLM系统如何提升企业研发效率 在竞争日益激烈的市场环境中,企业研发效率的高低直接决定了其产品的上市速度、质量以及市场竞争力。为了应对这一挑战,越来越多的企业开始引入PLM系统,而三品PLM系统凭借其强大的功能和全面的解决方案&…

移动技术开发:音乐播放器

1 实验名称 音乐播放器 2 实验目的 掌握使用Service启动服务的方法&#xff0c;掌握BroadcastReceiver广播传递机制的实现&#xff0c;利用Activity、Service和BroadcastReceiver实现一个音乐播放器APP。 3 实验源代码 布局文件代码&#xff1a; <?xml version"1.…

yum无法使用解决办法

yum无法使用解决方法&#xff08;比较全&#xff0c;以后如果遇到别的问题还会添加&#xff09;yum无法使用解决方法&#xff08;比较全&#xff0c;以后如果遇到别的问题还会添加&#xff09; 如下&#xff0c;新装的linux虚拟机&#xff0c;yum安装wget报错 Cannot find a …

内存占用估算方法

优质博文&#xff1a;IT-BLOG-CN 通过掌握每种数据类型的大小&#xff0c;就可以更准确地预测对象和数据的内存消耗。 一、基础数据类型 Java基础数据类型结构&#xff0c;在64位系统开启指针压缩情况下的内存占用字节数&#xff1a; booleanbytecharshortintlongfloatdoub…

D23【 python 接口自动化学习】- python 基础之判断与循环

day23 match语句 学习日期&#xff1a;20240930 学习目标&#xff1a;判断与循环 --33 match语句&#xff1a;如何通过match关键字来处理程序的分支逻辑&#xff1f; 学习笔记&#xff1a; match语句的语法 基本写法 代码实现&#xff08;后续更新为自己写的代码&#xff…

软件测试学习笔记丨Mock的价值与实战

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/32331 一、Mock的价值与意义 1.1 简介 测试过程中&#xff0c;对于一些不容易构造或获取的对象&#xff0c;用一个虚拟的对象来替代它&#xff0c;达到相同的效果&#xff0c;这个虚拟的对象…

YOLOv11尝鲜测试五分钟极简配置

ultralytics团队在最近又推出了YOLOv11&#xff0c;不知道在有生之年能不能看到YOLOv100呢哈哈。 根据官方文档&#xff0c;在 Python>3.8并且PyTorch>1.8的环境下即可安装YOLOv11&#xff0c;因此之前YOLOv8的环境是可以直接用的。 安装YOLOv11&#xff1a; pip instal…

安宝特分享 | AR技术重塑工业:数字孪生与沉浸式培训的创新应用

在数字化转型的浪潮中&#xff0c;AR&#xff08;增强现实&#xff09;技术与工业的结合正在呈现新的趋势和应用延伸。特别是“数字孪生”概念的崛起&#xff0c;为AR技术在工业中提供了独特而创新的切入点。 本文将探索AR如何与数字孪生、沉浸式体验和实用案例相结合&#xf…

OpenHarmony(鸿蒙南向开发)——小型系统芯片移植指南(一)

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ 持续更新中…… 移植须知 本文详细介绍如何将OpenHarmony小型系统的linux和LiteOS…

Elasticsearch学习笔记(3)

RestAPI Elasticsearch&#xff08;ES&#xff09;官方提供了多种语言的客户端库&#xff0c;用于与Elasticsearch进行交互。这些客户端库的主要功能是帮助开发者更方便地构建和发送DSL&#xff08;Domain Specific Language&#xff09;查询语句&#xff0c;并通过HTTP请求与…