Q1:BFC专题

1、防止高度坍塌的4种方案

问题重现

问题重现1:

  • 父元素的高度,都是由内部未浮动子元素的高度撑起的。

问题重现2:

  • 子元素浮动,还会对付元素造成影响。
  • 如果子元素浮动起来,就不占用普通文档流的位置。父元素高度会失去支撑,就造成高度坍塌。

问题重现3:

问题重现4:即使有部分元素留在普通文档流布局中支撑着父元素,如果浮动起来的元素高度高于留下的元素。那么浮动元素的高度会超出父元素边框,用户体验同样不好!

解决方案

1.为父元素纸质overflow:hidden属性

原理: CSS中的overflow :hidden属性会强制要求父元素必须包裹住所有内部浮动的元素,以及所有元素的margin范围。

缺点:如果刚好父元素有些超范围的子元素内容需要显示(比如,个别position定位的子菜单项),不想隐藏,就会发生冲突

2.在父元素内的结尾追加一个空子元素(块级元素),并设置空子元素清除浮动影响(clear:both)

原理: 利用clear:both属性和父元素必须包含非浮动的元素两个原理

3.设置父元素也浮动

原理: 浮动属性也会强制父元素扩大到包含所有浮动的内部元素。

4.为父元素末尾伪元素设置clear:both

优点:既不会影响显示隐藏,又不会影响查找元素,又不会产生新的浮动问题 父元素::after{ content:“”; display:table; clear:both; height:0 }

css面试精讲之防止高度坍塌的4种方式相关推荐

  1. java基础:Java七大外企经典面试精讲视频

    java基础:Java七大外企经典面试精讲视频 对于很多应聘java程序员的求职者来说,全面掌握java面试技巧,确实是自己找到一个好工作的敲门砖.今天小编在这里给大家分享一个关于java基础的Jav ...

  2. 面试精讲(guigu)

    文章目录 精讲 1. 基础部分 2. 对象 3. 原型 4. 预解析 5.执行上下文 6. 作用域 7. 闭包 9. 同步/异步 11. Promise 精讲 1. 基础部分 变量:用来存放数据,保存 ...

  3. 架构面试精讲第三节 分布式技术RPC、MQ、Redis、Mysql、restful详解

    07 RPC:如何在面试中展现出"造轮子"的能力? 我们知道,很多应用系统发展到一定规模之后,都会向着服务化方向演进,演进后的单体系统就变成了由一个个微服务组成的服务化系统,各个微 ...

  4. 架构面试精讲第四节 高并发下高可用、高性能架构详解

    15 如何向面试官证明你做的系统是高可用的? 我们已经用了五个模块分别讲了架构原理.分布式技术.中间件.数据库,以及缓存,这些都是面试中必考的技术领域和技术点,又因为我们处在大数据和互联网时代,所以高 ...

  5. 面试精讲之面试考点及大厂真题 - 分布式专栏 14 全面了解Kafka的使用与特性

    14全面了解Kafka的使用与特性 每个人都是自己命运的主宰. --斯蒂尔斯 引言 (图片来源:https://medium.com/) 上一小节说了消息队列的使用,那么面试官也会顺着MQ话题展开讨论 ...

  6. 面试官问我:创建线程有几种方式?我笑了

    前言 多线程在面试中基本上已经是必问项了,面试官通常会从简单的问题开始发问,然后再一步一步的挖掘你的知识面. 比如,从线程是什么开始,线程和进程的区别,创建线程有几种方式,线程有几种状态,等等. 接下 ...

  7. CSS实现隐藏滚动条并可以滚动内容效果(三种方式)

    隐藏滚动条的同时还需要支持滚动,我们经常在前端开发中遇到这种情况,最容易想到的是加一个iscroll插件,但其实现在CSS也可以实现这个功能,我已经在很多地方使用了,下面一起看看这三种方法. 方法1: ...

  8. android 图片铺满imageview,简单实现ImageView宽度填满屏幕,高度自适应的两种方式...

    两种方式 1.重写View的onMeasure方法 参考这里easion_zms的专栏 核心代码 protectedvoidonMeasure(intwidthMeasureSpec,intheigh ...

  9. 面试精讲之面试考点及大厂真题 - 分布式专栏 04 谈谈你对分布式的理解,为什么引入分布式?

    04谈谈你对分布式的理解,为什么引入分布式? 引言 刚刚毕业第一份工作,没接触过分布式微服务相关的知识,后来换工作才了解到这些,面试官看了我简历里写了分布式相关,就开始揪住这个问题问,虽然一知半解地说 ...

  10. 面试精讲之面试考点及大厂真题 - 分布式专栏 23 分布式系统下分布式锁的实现

    23 分布式系统下分布式锁的实现 困难只能吓倒懦夫懒汉,而胜利永远属于敢于等科学高峰的人. --茅以升 引言 锁是开发过程中十分常见的工具,你一定不陌生,悲观锁,乐观锁,排它锁,公平锁,非公平锁等等, ...

最新文章

  1. 通过xmanager远程连接redhat linux as 5
  2. 【numpy】几种fft函数的使用
  3. 用javascript实现自我执行功能的目的是什么?
  4. MySQL数据库排序选择的作用和该如何选择编码格式
  5. 关于DNS区域查询,DNS字典爆破,以及查询文件问题
  6. 在.NET Core 中实现健康检查
  7. 解决:Unable to open debugger port (127.0.0.1:55017): java.net.SocketException “Socket closed“
  8. NumPy 基础用法
  9. 数学建模四大模型总结
  10. MATLAB机器人仿真:利用plot3d显示真实三维仿真模型
  11. 期货与期权的主要区别与联系?
  12. android 18x games,Roadgames
  13. Excel如何批量将中文名字翻译为英文
  14. 是不是可以赚钱的APP越来越多
  15. Calendar 获得当前日期是这一年的第几天
  16. SDN 教程[2]: SDN基础操作
  17. 黄海导航软件测试,测试软件平台环境一览
  18. 【报错】“OSError: [Errno 22] Invalid argument: ‘cache\\resume_lattice_only_tra”
  19. InfluxDB-Influx安装和使用
  20. 计算机真值范围,计算机的机器数,真值,原码, 反码和补码

热门文章

  1. PHP中的PEAR是什么?
  2. 服务器 raid配置
  3. UVA 1359 POJ 3522 Slim Span(最小生成树kruskal)
  4. DPDK初始化hugepages
  5. c语言打印星号金字塔图形
  6. 一个基于Angular4+Bootstrap4+Scss的后台管理系统界面
  7. C++Primer_Chap16_模板和泛型编程_List01_定义模板_笔记
  8. 20个高权重的博客列表
  9. pkg-config 详解
  10. HTML5系列代码:Visual Studio Code(简称 VS Code)是一个由微软开发