Web前端基础(五):清浮动方法与优缺点

2024-08-26 20:48

本文主要是介绍Web前端基础(五):清浮动方法与优缺点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、如何对待美工

  • 对于靠谱美工,美工图精确度约0px。
  • 对于不靠谱的美工,要与产品经理沟通,并用邮件往来。

2、浮动对文档的影响

  • 浮动会导致当前元素脱离文档流,此时会对父级产生影响;
  • 子元素浮动,父级元素会出现高度为0的现象,这个现象叫做高度塌陷;

3、清浮动的方法:

3.1 需要清浮动的情况:

  • 子标签浮动后,父标签的高度无法被撑开,所以需要清浮动;
  • 新加入的标签,希望不受之前浮动元素的影响,则需要清浮动;

3.2 清浮动方法:

  • 1、子元素浮动,父级元素也浮动;
  • 2、给空标签设置属性clear: both;
    不允许有浮动;例:
    这里写图片描述这里写图片描述
    放在要清除的最末尾;
  • 3、br标签清浮动
    为br标签设置属性——clear=”all” 即可
  • 4、给父级标签设置 overflow: hidden/ auto ;
    • hidden:超出内容隐藏。
    • auto:默认属性,在需要时剪切内容并添加滚动条;超出时显示滚动条。
  • 5、after伪元素清浮动
    原理:替代空标签,相当于用一个高度宽度为0的块代替空标签
    例:这里写图片描述

4、清浮动方法优缺点辨析

4.1 子元素浮动,父级元素也浮动

  • 优点:不存在结构和语义化问题,代码量少;
  • 缺点:使得与父元素相邻的元素的布局会受到影响。

4.2 空标签设置属性clear: both

  • 优点:通俗易懂,容易掌握;
  • 缺点:会添加大量无语义空标签,结构与表现未分离,不利于维护。

4.3 给父级标签设置 overflow: hidden/ auto

  • 优点:不存在结构和语义化问题;
  • 缺点:
    • hidden——>内容增多时候容易造成不会自动换行,导致内容被隐藏,无法显示需要溢出的元素。
    • auto——>多个嵌套后,有些情形下会造成内容全选;IE中mouseover造成宽度改变时会出现最外层模块的滚动条。

4.4 after伪元素清浮动

  • 优点:结构和语义化完全正确;
  • 缺点:复用方式不当会造成代码量增加。

4.5 br标签清浮动

  • 优点:比空标签方式语义稍强,代码量较少;
  • 缺点:结构与表现未分离。

这篇关于Web前端基础(五):清浮动方法与优缺点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1109649

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp