首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

巧用浮动布局、解决高度塌陷实例分享|技术创作特训营第一期

面包屑导航和按钮一行两端显示面包屑或编辑栏超出宽度则自动另行显示图片实现采用浮动,绿色块左浮,蓝色块右浮,利用浮动特性实现宽度超出另一行显示的效果,并是动态的。...浮动可以让一个元素脱离标准流,向左或向右移动并占据其父元素的剩余空间。浮动元素不会影响其他元素的布局,但是它们会创建一个新的块级框,可以设置宽度和高度。...高度塌陷当然,子元素都浮动以后,会脱离出div外,导致超出元素(元素高度塌陷)。**怎么解决呢?**图片给div加overflow: hidden清除浮动。...overflow: hidden 是一个 CSS 属性,用于控制元素的内容是否超出其容器的边界。它可以清除浮动,但前提是浮动发生在该元素内部。...当一个元素包含浮动时,如果不使用 clearfix 方法或其他技术来清除浮动,可能会导致元素高度塌陷。为了解决这个问题,可以在元素上设置 overflow: hidden,这样就可以清除浮动了。

20711

【网页前端】CSS的常用布局(上)

清除浮动 4.1 准备代码 4.2 引言 4.3 概念&格式 4.4 额外标签法 (隔墙法) 4.5 单伪元素法 4.6 双伪元素法 4.7 overflow:超出隐藏法 4.8 总结 5. ...: 注意:因为从上到下执行代码,绿色方块是第一个向右浮动的,自然在最右边 3.3.5 课堂练习:两端对齐排列 准备代码: 要求的效果: 提示: 左浮动:先红后蓝 右浮动:先绿后黄...格式: clear : 属性值 ; 准备代码: 默认效果: 常见属性值:(为绿色块设置清除浮动) 注意:clear 不会清除元素自身的浮动状态,仅会清除该元素左侧或右侧的浮动效果...一般在元素末尾添加一个空标签: 注意:一般使用块级元素 div , p 标签也能达到对应效果 示例代码:...但会见到其他人的代码 中使用 但因为不会添加额外标签,很多美工人员用伪元素可以应对需求反复的修改,所以会见到其他人的 代码中使用 4.7 overflow:超出隐藏法 overflow

95530
您找到你想要的搜索结果了吗?
是的
没有找到

一文掌握css常见布局float、position、flex、grid

,但是跟绝对定位区别的一点是,该元素边产生了浮动流,以至于其相邻的元素会向右或者想左靠近该元素,而不是跟绝对定位一样,相邻的元素会忽略该元素的所在位置,直接铺满整个空间。...脱离文档流设置了float属性的元素跟绝对定位一样,脱离了文档流,对于一个元素中只有一个或多个有浮动属性的元素,元素会产生塌陷效果,这时一定要留意不要有让元素的高度自适应的想法:浮动实现横向导航目前浮动常见的用法便是配个...并且relatiive定位不会脱离文档流,我们可以看到div2原来的位置依然存在。...,通过用来我们需要将某个子元素在元素的固定位置显示,比如实现窗口的关闭按钮这种场景。...因为div1有定位属性,所以div2的位置偏移量全是相对一div1来计算了,如果我们把div1的定位属性去掉的话,div2便没有了级定位元素,那此时,div2是针对整个body做便宜的,如图:另外最后一点

8310

Float 的那些事

举个常见例子,或许您有实现宽度自适应按钮的经验,实现宽度自适应的关键就是要让按钮的大小自适应于文字的个数,这就需要按钮要自动包裹在文字的外面。我们用什么方法实现呢?...块1享有浮动,脱离文档流并且向右移动 ?      块1向左浮动。IE8和Firefox中因为它不再处于文档流中,所以它不占据空间,实际上覆盖住了块2,使块2从视图中消失。...而IE6和IE7中紧跟在浮动元素块1的块2也会跟着浮动。如下图 ? ?   2.2 浮动“塌陷”     对元素的影响:如果元素只包含浮动元素,且元素未设置高度和宽度的时候。...解决方案     ① 在使用float元素的元素结束前加一个高为0宽为0且有clear:both样式的div 块1 float:left     ② 在使用float元素的元素添加overflow:hidden;     ③ 使用after伪对象清除浮动 3. float与JavaScript   使用JavaScript

96230

【CSS】轮播图案例开发 ( 基本设置 | 子绝相 | 浏览器水平居中 | 圆角设置 | 绝对定位居中设置 )

子绝相 : 在该轮播图中 , 需要 使用绝对定位在容器中任意摆放 , 包括左右垂直居中的按钮 , 下方的小圆点 ; 子元素需要使用绝对定位 , 那么容器必须使用相对定位 ; /* 子绝相..., 需要设置 overflow 属性 ; /* 超出圆角部分的内容直接隐藏 */ overflow: hidden; 代码示例 : .banner { /* 子绝相 : 整个容器需要设置相对定位...left: 0; /* 复合写法设置圆角矩形 : 左上角 右上角 右下角 左下角 */ border-radius: 0 15px 15px 0; } /* 设置向右翻页按钮样式...left: 0; /* 复合写法设置圆角矩形 : 左上角 右上角 右下角 左下角 */ border-radius: 0 15px 15px 0; } /* 设置向右翻页按钮样式...-- 向右翻页按钮 --> > <!

1.7K10

第213天:12个HTML和CSS必须知道的重点难点问题

PS:如果想要元素超出,可以设置margin属性 如果两个元素一个向左浮动,一个向右浮动,左浮动元素的marginRight不会和右浮动元素的marginLeft相邻。...如果有多个浮动元素,浮动元素会按顺序排下来而不会发生重叠的现象。 如果有多个浮动元素,后面的元素高度不会超过前面的元素,并且不会超过包含块。...如果有非浮动元素和浮动元素同时存在,并且非浮动元素在前,则浮动元素不会高于非浮动元素 浮动元素会尽可能地向顶端对齐、向左或向右对齐 重叠问题 行内元素与浮动元素发生重叠,其边框,背景和内容都会显示在浮动元素之上...3.3 清除浮动的方法 方法1:给div定义 高度 原理:给DIV定义固定高度(height),能解决DIV 无法获取高度得问题。...(不推荐使用) 方法三:让div 也一并浮起来 这样做可以初步解决当前的浮动问题。但是也让浮动起来了,又会产生新的浮动问题。

2.2K20

CSS布局基础(待补充完整)

它的规则如下: 自上而下排列,每个块元素独占一行,行内元素自左向右排列,不会独占一行 独占一行 从左向右 这是在不使用 样式的请况之下正常排列方式...2 浮动布局 float属性,一般情况下元素默认是不浮动的,一旦添加该属性,元素就会向右或者向左浮动。看例子 这是浮动文字 经过对比可以发现,在不使用浮动之前,三个盒子都按照块元素的正常文档流排列方式,并且元素的高也随着他们的内容大小变化。...会发现几点变化: 三个盒子的块元素变为了行内元素的排列方式,按照浮动属性值自左向右 元素的高度不在随他们变化,直接没有了高度,当然他们依然相对于元素排列,只是没有将其撑开 这里也引入一个问题...上述例子中,虽然没有把元素撑开,但是与它同级的兄弟元素并不会直接跑到它上面去,而是在它之下按照一下两个规则排列 2-2-1 若是浮动元素后紧跟 -> h1 ~ h6、p 这一类段落标签会自动换行

36110

CSS-浮动(float)

在CSS中,通过float属性来定义浮动,其基本语法格式如下: 选择器{ float:属性值; } 属性值 描述 none 元素不浮动(默认值) left 元素向左浮动 right 元素向右浮动...浮动的元素的对齐 浮动首先创建包含块的概念(包裹),总是找理它最近的级元素,但是不会超出内边距的范围。...总结: 浮动的目的就是为了让多个块级元素同一行上显示。 一个盒子里面的子盒子,如果其中一个子级有浮动的,则其他子级都需要浮动。这样才能一行对齐显示。...如果浮动一开始就是一个美丽的错误,那么请用正确的方法挽救它。 # 清除浮动本质 清除浮动主要为了解决级元素因为子级浮动引起内部高度为0的问题。...# 清除浮动的方法 其实本质叫做闭合浮动更好一些, 记住,清除浮动就是把浮动的盒子圈到里面,让盒子闭合出口和入口不让他们出来影响其他元素。

2.1K20

前端必知必会-BFC案例剖析

内部的 Box 会在垂直方向上一个接一个的放置 块级格式化上下文中相邻的盒子之间的垂直边距折叠 每个元素的左外边距与包含块的左边界相接触(从左向右),即使浮动元素也是如此。...(这说明 BFC 中子元素不会超出他的包含块,而position为 absolute 的元素可以超出他的包含块边界) BFC的区域不会与 float 的元素区域重叠 计算 BFC 的高度时,浮动子元素也参与计算...我们来看 BFC 特性最后一条,每个 BFC 都是独立的,不会与外界元素互相影响。...这个问题应该遇到的会比较多点,子元素浮动之后撑不开元素的高度,这时候我们给元素创建一个 BFC 就可以了。运用的是 BFC 特性的第5条,计算BFC的高度时,浮动子元素也会计算。...我们这里给元素添加一个 overflow:hidden 这时候元素的高度就会有了。 ? 其实还有其他一些由于 BFC 引发的问题,由于时间原因,这里我就不一一举例了。

77930

CSS清除浮动

什么是浮动 浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。 由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。...当把框 1 向右浮动时,它脱离文档流并且向右移动,直到它的右边缘碰到包含框的右边缘: ? 当框 1 向左浮动时,它脱离文档流并且向左移动,直到它的左边缘碰到包含框的左边缘。...,导致被浮动元素覆盖,除非这些 div 设置了宽度,并且元素的宽度不足以包含它们,这样兄弟元素才会被强制换行。...2.若是内联元素,则会尽可能围绕浮动元素。 另外,浮动的元素脱离了普通流,这样使得包含它的元素并不会因为这个浮动元素的存在而自动撑高,这样就会造成高度塌陷。 ?...deeppink; overflow: hidden; } 优点:代码简洁 缺点:内容增多的时候容易造成不会自动换行导致内容被隐藏掉,无法显示要溢出的元素 不推荐使用 3.使用after伪元素清除浮动

2.3K20

CSS 浮动布局,解决清除浮动的问题

浮动特性 1、浮动元素有左浮动(float:left)和右浮动(float:right)两种 2、浮动的元素会向左或向右浮动,碰到元素边界、其他元素才停下来 3、相邻浮动的块元素可以并在一行,超出级宽度就换行...4、浮动让行内元素或块元素自动转化为行内块元素(此时不会有行内块元素间隙问题) 5、浮动元素后面没有浮动的元素会占据浮动元素的位置,没有浮动的元素内的文字会避开浮动的元素,形成文字饶图的效果 6、元素如果没有设置尺寸...再来看看这个怎么实现 级盒子不给高度,子集盒子浮动级盒子需要清除浮动 ? 问题如下图: ? 可以从上图看出,元素div并没有因为子元素的数量增多而增加,那么这种问题怎么处理呢?...清除浮动 :子元素设置为浮动元素无法被撑开的这种情况 级上增加属性overflow:hidden 在最后一个子元素的后面加一个空的div,给它样式属性 clear:both(不推荐) 使用成熟的清浮动样式类...使用级元素div增加样式 overflow:hidden 来解决清除浮动的问题 ? 很好,用overflow:hidden就可以解决了。再试试其他方法。

2.7K30

可视化格式模型-浮动

浮动可以看作其中的一个图层。 浮动和文字环绕 浮动框就是一个框在当前行被向左或向右挪动(偏移),它不在常规流中,浮动框由浮动元素的框组成。...right 与left类似,框向右浮动,内容在该框的左侧排列,从顶部开始。 none 该框不浮动浮动细则 1....对于向右浮动的框也有类似的规则。 也就是说,浮动元素的定位受先前生成的浮动框的影响。...当一个浮动框发生在两个margin折叠的中间时,浮动元素的定位好像它有另一个空的块级框位于常规流中。 第一句好理解,说的是顶边不能超出包含块,跟左边右边不能超出一个道理。...O、A、B都是浮动元素,O、A是做浮动元素,根据宽度计算,A应该处于O的下一行。B是右浮动浮动元素。按照标准,B浮动的时候,顶边不应高于A,因此,B不会放到O的右侧显示

1.2K100

【面试题解】什么是浮动?有什么应用?有什么影响?如何清除浮动

浮动布局 什么是浮动布局 所谓 css 浮动就是浮动元素会脱离文档的普通流,根据 float 的值向左或向右移动,直到它的外边界碰到元素的内边界或另一个浮动元素的外边界为止。...请看下图,当把框 1 向右浮动时,它脱离文档流并且向右移动,直到它的右边缘碰到包含框的右边缘。 为什么会有浮动 因为当初设计 float 的目的是为了能实现文字能够环绕图片的排版功能。...影响了叔叔元素 因为元素的高度塌陷了,所以叔叔元素的布局也会受到影响。 如何清除浮动 级元素也浮动 我们给浮动元素的元素也设置个浮动。...'; height: 0; display: block; clear: both; } 利用BFC 我们利用 BFC 的区域不会与 float 重叠;计算 BFC 的高度时...,浮动元素也參与计算的特性,使元素成为一个 BFC,也可以清除浮动

58610

【CSS】元素显示与隐藏 ( display 隐藏对象 | visibility 隐藏对象 | overflow 隐藏对象 )

一、元素的显示与隐藏 ---- 在开发中 , 经常需要使用到 元素的显示 与 隐藏 , 默认状态下 , 按钮下面没有任何内容 ; 将鼠标移动到 红色按钮 后 , 显示一个对话框布局 ;...class="one"> 显示效果 : 3、display 隐藏元素代码示例 使用 display...; 三、visibility 隐藏对象 ---- 1、visibility 隐藏对象语法说明 visibility 的属性值 默认为 inherit , 继承自元素 , 一般默认都是可见的 ; 一般情况下元素设置不可见...隐藏对象语法说明 overflow 只能对超出部分隐藏代码 ; overflow 可设置的值 : visible : 子元素超出容器的部分仍然显示 ; hidden : 子元素超出容器的部分隐藏 ;...scroll : 不管子元素是否超出容器 , 都显示滚动条 ; auto : 如果子元素超出容器显示滚动条 , 如果子元素没有超出容器不显示滚动条 ; 效果参考 【CSS】清除浮动 ② ( 清除浮动

5.1K30

CSS中的浮动和清除浮动,梳理一下!

第一篇就整理整理CSS中很常见的浮动以及清除浮动的一些方式吧。 浮动到底是什么? 浮动核心就一句话:浮动元素会脱离文档流并向左/向右浮动,直到碰到元素或者另一个浮动元素。请默念3次!...浮动会脱离文档 脱离文档,也就是说浮动不会影响普通元素的布局 ?...浮动会脱离文档流 从上图可以看出,默认三个设置了宽高的block元素,本来会格子独占一行;如果框1设置了向左/向右浮动,他会忽略框2和框3,直到碰到元素;同时也存在盖住普通元素的风险。.../div> 结果如下,浮动元素脱离了文档流,并不占据文档流的位置,自然元素也就不能被撑开,所以没了高度。...浮动最初设计只是用来实现文字环绕排版的。 浮动的三个特点很重要。 脱离文档流。 向左/向右浮动直到遇到元素或者别的浮动元素。 浮动会导致元素高度坍塌。

1.6K70

寒假提升 | Day10 CSS 第八部分

总结浮动常见的规则内容 元素一旦浮动后, 脱离标准流 朝着向左或向右方向移动,直到自己的边界紧贴着包含块(一般是元素)或者其他浮动元素的边界为止 定位元素会层叠在浮动元素上面 如果元素是向左(右)...浮动浮动元素的左(右)边界不能超出包含块的左(右)边界 浮动元素之间不能层叠 如果一个元素浮动,另一个浮动元素已经在那个位置了,后浮动的元素将紧贴着前一个浮动元素(左浮找左浮,右浮找右浮) 如果水平方向剩余的空间不够显示浮动元素...清除浮动 浮动的问题 – 高度塌陷 由于浮动元素脱离了标准流,变成了脱标元素,所以不再向元素汇报高度 元素计算总高度时,就不会计算浮动子元素的高度,导致了高度坍塌的问题 解决元素高度坍塌问题的过程...,一般叫做清浮动(清理浮动、清除浮动) 清浮动的目的是 让元素计算总高度的时候,把浮动子元素的高度算进去 如何清除浮动呢?...,维护麻烦 违反了结构与样式分离的原则(不推荐) 方法三: 给元素添加一个伪元素 推荐; 编写好后可以轻松实现清除浮动; 方法三 – 伪元素清除浮动元素增加::after伪元素 纯CSS样式解决

1.2K20
领券