元素浮动,使元素并排显示 属性folat 属性值folat:left左对齐 属性值folat:right右对齐 浮动的作用:使元素并排显示,并且每个元素间没有间隔,脱离文档流 清除元素浮动...: 清除元素浮动的原因: 元素浮动后,会遮挡已经浮动的元素后边的元素位置,使浮动元素后边元素显示不全。...清除办法: 1.在浮动元素后,新建一个块级元素。...2.设置该块级元素属性clear 属性值:left 清除左浮动 属性值:right 清除右浮动 属性值:both 清除左右两边浮动(只要元素有浮动,无论左右两边浮动都可以清除...) 清除浮动后需要对清除浮动的块级元素进行优化 1.设置块级元素高度和字体尺寸为0px 2.设置块级元素visibility属性值为hidden
一、浮动 HTML元素的浮动是通过css来设定的,css中的float属性可以让元素左浮动或者右浮动,具体设置参数如下 float: left; /*左浮动*/ float: right; /*右浮动*...元素原先的位置,接下来我们设置box1右浮动 .box1{ float: right; } 效果如下: 我们发现box1浮动到右侧,元素原先占有的位置不在保留,box2顶上去,占有了元素box1...3.2 给父级元素设置overflow 可通过css的属性overflow来出发元素的bfc,从而让元素来清除浮动,比如我们在父元素ul上增加overflow属性 ul{ overflow: hidden...html元素清除浮动 在ul内部的子元素最后增加一个html元素,给html元素增加css属性clear来清除浮动 首页 注册 <li...,在html页面上增加一个元素,就显得多余,而且还会影响文档结构,也不推荐 3.5 通过伪元素清除浮动 通过给父元素设置伪元素 ul:after{ content: ""; display: block
按照CSS规范,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列。因此当其高度超出包含容器时,一般父容器不会自动伸长以闭合浮动元素。...在使用 overflow 之前还有过一种使用 float 的方法,就是让父容器也浮动,这利用到了浮动元素的一个特性——浮动元素会闭合浮动元素。...按照规范,以下类型的元素会产生一个块级格式化范围: 浮动元素,left 或者 right 皆可。 绝对定位的元素。 inline-block 元素,不过这个 gecko目前不支持。...overflow 取值非 visible 的元素。 所以,原来在标准兼容浏览器中我们也可以有这么多的方法闭合一个浮动元素,而且只需要 CSS,无需其他。...而对于 IE/Win,它有一套自己的体系,就是 layout,具有 layout 的元素会自动闭合浮动元素,再来看看触发 layout 的 CSS 属性,会发现和上面的块级格式化范围有很多类似之处: 浮动元素
利用伪元素:after清除浮动 让页面呈现多列布局时经常会使用 float:left/right ,可是浮动布局会导致父元素的高度为0(未设置高度的情况下),不会根据子元素的高度而变化,另外,后面不需要浮动想在下一行显示的标签出现在浮动元素的后面...所以我们在使用浮动进行布局的时候会需要一个块级元素(行内元素无效)来设置 clear 属性,如果浮动元素下方本来就有元素,那我们可以直接对该元素设置 clear:both ,若没有其他元素需要展示,我们往往会写一个空白标签来清除浮动... 但是这样无疑会增加浏览器的渲染负担,所以考虑使用伪元素 :after 来代替这个空白标签,因为清除浮动需要在浮动元素后面,所以不可以使用...:before ,对 :after 设置 content:"" ,并使其 display:block 成为块级元素后 clear:both 来清除浮动: #content:after{content:"
DOCTYPE html> 64-浮动元素高度问题 <...-- 1.在标准流中内容的高度可以撑起父元素的高度 2.在浮动流中浮动的元素是不可以撑起父元素的高度的 -->
文章目录 一、清除浮动 - 使用双伪元素清除浮动 二、代码示例 一、清除浮动 - 使用双伪元素清除浮动 ---- 为 .clearfix:before 和 .clearfix:after 并集选择器 ,...设置如下样式 : /* 清除浮动 - 使用双伪元素清除浮动 */ .clearfix:before, .clearfix:after { content: ""; display..., 在需要清除浮动元素的 父容器 中 , 声明 clearfix 类 ; 清除浮动 - 使用双伪元素清除浮动</title...:after { clear: both; } .clearfix { *zoom: 1; } /* 清除浮动 - 使用 after 伪元素 ( 方法三 : 最流行写法
在CSS规范中,浮动定位不属于正常的页面流(page flow),是独立定位的。所以,只含有浮动元素的父容器,在显示时不考虑子元素的位置,就当它们不存在一样。...解决方法一:添加空元素 经典的解决方法,就是在浮动元素下方添加一个非浮动元素,就像图三。...原理是父容器现在必须考虑非浮动子元素的位置,而后者肯定出现在浮动元素下方,所以显示出来,父容器就把所有子元素都包括进去了。 这种方法比较简单,但是要在页面中增加冗余标签,违背了语义网的原则。...解决方法二:浮动的父容器 另一种思路是,索性将父容器也改成浮动定位,这样它就可以带着子元素一起浮动了。...解决方法三:浮动元素的自动clearing 它的思路是让父容器变得可以自动"清理"(clearing)子元素的浮动,从而能够识别出浮动子元素的位置,不会出现显示上的差错。
一、浮动元素与父容器盒子关系 ---- 浮动元素 与 父容器盒子关系 : 浮动 只会 影响 当前盒子 和 后面的盒子 , 前面的 标准流元素 不受 本元素浮动 的影响 ; 前一个兄弟元素是 浮动元素...: 当前 浮动元素 与 前一个浮动兄弟元素 顶部对齐 , 放置在右侧 ; 当前 普通流元素 只会在 前一个普通流元素下方 , 如果前面没有普通流元素, 则在父容器顶部 ; 前一个兄弟元素是...普通流元素 : 当前 浮动元素 在 前一个普通流兄弟元素 下方 ; 当前 普通流元素 在 前一个普通流元素下方 ; 如果想要多个元素 在 一行中显示 , 那么所有的 子元素都要 浮动 , 如果出现一个普通元素..., 那么普通元素后面的 浮动元素都会自动显示在第二行 ; 二、代码示例 ---- 1、浮动元素 + 浮动元素 两个浮动元素在一行显示 ; 代码示例 : <!...+ 浮动元素 本示例中 , 浮动元素在普通元素下方 , 因为浮动属性不影响之前的 普通流 元素 , 从本元素开始浮动 , 也要在 普通流元素 下方进行排列 ; 代码示例 : <!
文章目录 一、浮动元素与父容器盒子关系 二、代码示例 1、有内边距的情况 2、没有内边距的情况 一、浮动元素与父容器盒子关系 ---- 在 父容器 盒子模型 中 , 将 子元素 设置为 浮动元素 ,...会出现如下情况 : 浮动元素位置 : 浮动元素 会自动 浮动到 父容器盒子模型 的左上角 与 右上角 , 浮动元素 与 父容器盒子模型边框 : 浮动元素 与 父容器 边框不重叠 , 如果没有内边距 ,...浮动元素 紧贴边框 内测 ; 浮动元素 与 父容器盒子模型 内边距 : 浮动元素 紧贴 父容器内边距 ; 二、代码示例 ---- 1、有内边距的情况 在下面的代码中 , 父容器 边框 20 像素 ,...内边距 20 像素 , 浮动元素 会 紧贴 20 像素的内边距 , 距离边框 20 像素 位置 的左上角 放置 ; 代码示例 : <!...- 浮动元素 */ .son { float: left; width: 200px; height: 200px; background-color: red; }
测试地址:浮动的简单应用。...原因是浮动后,元素脱离了文档流,不占据空间,想左或向右移动直至左右两边碰到包含框的两边。...为什么我对两张图中的之一进行浮动时,不会遮住另一张图呢? ---- 2.我的理解错在了哪里 首先,再一次查看W3CSchool官网权威对CSS浮动的讲解,详见:CSS浮动。...原文截图如下: image.png 图中红框的这句话,明明说到对框进行浮动时,会脱离文档流,若向右浮动直到,直到它的右边框碰到包含框的右边缘,随后便说道,若向左浮动,脱离文档流并向左移动,直到它的左边缘碰到包含框的左边缘...这句话容易产生误导,浮动的框会脱离文档流,因此不占用文档中的空间。但是并非任何情况下浮动框向左或向右移动直至左右两边碰到包含框的两边才停止。
css浮动元素的重叠问题 说明 1、行内元素与浮动元素重叠,其边框、背景和内容将显示在浮动元素之上。 2、块级元素与浮动元素重叠时,边框和背景将显示在浮动元素下,内容将显示在浮动元素上。...background-color: lightgreen; border: 1px solid green; width: 700px; height: 500px; } 以上就是css浮动元素的重叠问题
触发这个bug的条件是: 在一个非浮动元素上应用overflow,且其值不为visible(这将形成一个Block Formatting Context元素)。...这个BFC元素拥有一个浮动的兄弟元素。 在这个BFC元素上应用与其兄弟元素浮动方向相同的margin。...这个BFC元素没有指定宽度值(或者指定width:auto) 当满足触发条件时,该BFC元素的另一侧的边距将不再受css控制(在webkit核心浏览器下),而是由你所指定的与浮动元素相同的边距决定,即使你在...具体来说,可以分为两种情况: 当BFC与浮动方向相同的边距小于或等于浮动元素占据的总宽度(width+margin+padding+border)时,BFC另一侧的边距等于所设定方向上的边距(下图前两种情况...); 当BFC与浮动方向相同的边距大于浮动元素占据的总宽度时,BFC另一侧的边距等于浮动元素占据的总宽度(下图第三种情况)。
css浮动元素的规则介绍 说明 1、当浮动元素浮动时,其margin不会超过包含块的padding。 如果想要超过元素,可以设置margin属性。...如果两个元素一个向左浮动,另一个向右浮动,左浮动元素的marginRight不会与右浮动元素的marginLeft相邻。 2、若有多个浮动元素,浮动元素将按顺序排列而不重叠。...后面的元素高度不会超过前面的元素,也不会超过包含块。 3、如果非浮动元素和浮动元素同时存在,非浮动元素在前面。 浮动元素不会高于非浮动元素。浮动元素会尽可能对齐顶部、左右。 实例 <!...blue; } 以上就是css浮动元素的规则介绍
测试地址:浮动的简单应用。...我的问题: W3CSchool中讲解CSS定位,浮动那一节中,明确说对框1进行向左浮动时会遮住框2,原因是浮动后,元素脱离了文档流,不占据空间,想左或向右移动直至左右两边碰到包含框的两边。...为什么我对两张图中的之一进行浮动时,不会遮住另一张图呢? ---- 2.我的理解错在了哪里 首先,再一次查看W3CSchool官网权威对CSS浮动的讲解,详见:CSS浮动。 原文截图如下: ?...图中红框的这句话,明明说到对框进行浮动时,会脱离文档流,若向右浮动直到,直到它的右边框碰到包含框的右边缘,随后便说道,若向左浮动,脱离文档流并向左移动,直到它的左边缘碰到包含框的左边缘。...这句话容易产生误导,浮动的框会脱离文档流,因此不占用文档中的空间。但是并非任何情况下浮动框向左或向右移动直至左右两边碰到包含框的两边才停止。
1、在最后一个子元素后面清除浮动 2、父元素加over-flow:hidden;(副作用:子元素定位不能超出父元素的范围) 3、父元素也一样浮动(最笨的方法); 4、子元素使用inline-block;...代替浮动;
{ float: 浮动属性值; } 浮动属性值 取值 : none : 默认设置 , 元素没有浮动效果 ; left : 元素 左浮动 ; right : 元素 右浮动 ; 3、浮动 - 脱离标准流...显示模式有 3 种 ; 块级元素 行内元素 行内块元素 元素 的 浮动特性 会改变 该元素的 Display 显示模式 , 原来的 元素 不管是 块级元素 还是 行内元素 , 设置 浮动 样式后 , 其显示模式...类似于 行内块元素 ; 4、浮动元素与父容器盒子关系 在 父容器 盒子模型 中 , 将 子元素 设置为 浮动元素 , 会出现如下情况 : 浮动元素位置 : 浮动元素 会自动 浮动到 父容器盒子模型 的左上角...与 右上角 , 浮动元素 与 父容器盒子模型边框 : 浮动元素 与 父容器 边框不重叠 , 如果没有内边距 , 浮动元素 紧贴边框 内测 ; 浮动元素 与 父容器盒子模型 内边距 : 浮动元素 紧贴...属性 , 会 将溢出元素隐藏 , 或 生成滚动条 , 导致显示结果不理想 ; 这里提出第三种 清除浮动的方法 , 使用 after 伪元素清除浮动 ; 5、清除浮动 语法 - after 伪元素清除浮动
文章目录 一、盒子模型位置摆放三大机制 - 普通流、浮动、定位 二、行内块元素的摆放缺陷 一、盒子模型位置摆放三大机制 - 普通流、浮动、定位 ---- 盒子模型位置摆放三大机制 : 普通流 : 默认的摆放样式...; 块级元素 摆放 : 每个 块级元素 独占一行 , 排列顺序 从上到下 ; 如 : div , p , h1 等 ; 行内元素 摆放 : 多个 行内元素 在同一行显示 , 排列顺序 从左到右..., 显示到边缘 自动换行 ; 如 : span , strong , a 等 ; 浮动 : 盒子模型 在 普通流 基础上 覆盖显示 , 多个 块级元素 可以在同一行 相互覆盖显示 ; 定位 : 盒子模型...在 浏览器 指定位置 显示 ; 普通流 相当于 Android 中的 线性布局 ; 浮动 相当于 Android 中的 帧布局 或 相对布局 或 约束布局 ; 定位 相当于 Android 中的...绝对布局 ; 二、行内块元素的摆放缺陷 ---- 行内块元素的摆放缺陷 : 缝隙无法控制 : 行内块元素 之间 有缝隙 , 该缝隙大小无法控制 ; 排列顺序无法控制 : 行内块元素只能从左到右进行排列
margin-bottom的bug是容器div的 'zoom:1' 触发了 hasLayout,其内部浮动子元素也参与到了容器的高度计算之中 在 IE6 IE7 IE8(Q)中,容器div的 'zoom...:1' 触发了 hasLayout,其内部浮动子元素也参与到了容器的高度计算之中。...但是浮动子元素设置的 'margin-bottom' 消失; 在其他浏览器中,容器的 'overflow:hidden' 创建了新的 Block Formatting Context ,同样,其内部浮动子元素也参与到了容器的高度计算之中...浮动子元素的四个方向的 margin 均正常。 例子:第一个div子元素设置了底部的margin值,在清除浮动之后无效 <!...只要不同时触发父元素hasLayout、子元素左浮动、左浮动子元素拥有非零的 margin-bottom 值,这三个条件中任意一项,均可解决此问题。
文章目录 一、浮动语法简介 1、语法说明 2、没有浮动的效果 3、左浮动的效果 4、右浮动的效果 5、右浮动 + 外边距效果 二、完整代码示例 一、浮动语法简介 ---- 1、语法说明 为 元素 设置了...浮动 CSS 属性 , 可以实现 : 元素标签 不再受 标准流 控制 ; ( 块级元素 , 行内元素 , 行内块元素 的布局方式 ) 元素标签 可以 放置在指定的位置 , 靠左 或 靠右 ; CSS...浮动语法 : 选择器 { float: 浮动属性值; } 浮动属性值 取值 : none : 默认设置 , 元素没有浮动效果 ; left : 元素 左浮动 ; right : 元素 右浮动 ; 2、...没有浮动的效果 浮动效果需要结合文字来进行对比 , 浮动可以实现 使用文字环绕图片 的效果 ; 设置没有浮动效果 : /* 默认无浮动效果 */ float: none; 展示效果 : 图片是 行内块元素..., 与文字地位相同 , 无法实现文字环绕图片效果 ; 3、左浮动的效果 左浮动效果 , 可以让图片浮动在左上角 , 文字环绕在图片周围 ; 设置左浮动效果 : /* 左浮动效果 */ float:
浮动 float半脱离文档流(对元素,脱离文档流;对内容,在文档流) 浮动的定义:使元素脱离文档流,按照指定方向发生移动,遇到父级边界或者相邻的浮动元素停了下来。...1.加高 问题:扩展性不好 2.父级浮动 问题:页面中所有元素都加浮动,margin左右自动失效 3.inline-block 清浮动方法: 问题:margin左右auto失效; 4.空标签清浮动...6.after伪元素 清浮动方法(现在主流方法) .clear:after{ display: block; content: ''; clear: both; height: 0; visibility...IE6,7下不兼容 zoom 缩放 ie6 7兼容 7.overflow:hidden 清浮动方法; 8.position:absolute; 绝对定位元素子级的浮动可以不用写清浮动方法; position...:fixed; 固定定位元素子级的浮动可以不用写清浮动方法;(IE6不兼容)
领取专属 10元无门槛券
手把手带您无忧上云