你有可能不知道的css浮动问题

最近在开发过程中,有的时候会经常遇见明明知道需要这样做,但是为什么要这样做的原因我们却总是不明所以然。

先来解释下什么叫做清除浮动吧:

在非IE浏览器(如Firefox)下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象。这个现象叫浮动溢出,为了防止这个现象的出现而进行的CSS处理,就叫CSS清除浮动。

如上定义,当容器的高度为auto的时候,我们使用float为(right || left)的时候。会出现父级元素不能撑开的结果。如图

图上为没有使用浮动的效果,当我们对item添加浮动样式(float:left)之后

就会产生这样的效果,使得li的父级元素的高度为0。

所以我在使用浮动的时候,一般会给父级的元素加上一个固定的高度,或者使用after的伪类的方式给元素的浮动效果。

当然,清除浮动的办法很多,自己随意就好,毕竟总会找到适合你的那一款。

时间: 2024-12-16 10:00:08

你有可能不知道的css浮动问题的相关文章

你所不知道的 CSS 负值技巧与细节

原文:你所不知道的 CSS 负值技巧与细节 写本文的起因是,一天在群里有同学说误打误撞下,使用负的 outline-offset 实现了加号.嗯?好奇的我马上也动手尝试了下,到底是如何使用负的 outline-offset 实现加号呢? 使用负值 outline-offset 实现加号 假设我们有这样一个简单的结构: <div></div> div { width: 200px; height: 200px; outline: 20px solid #000; outline-of

您可能不知道的CSS元素隐藏“失效”以其妙用

by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=2191 一.CSS元素隐藏 在CSS中,让元素隐藏(指屏幕范围内肉眼不可见)的方法很多,有的占据空间,有的不占据空间:有的可以响应点击,有的不能响应点击.后宫选秀——一个一个看. { display: none; /* 不占据空间,无法点击 */ } { visibility: hidden; /* 占据空间,无法点击

您可能不知道的CSS元素隐藏“失效”以其妙用——张鑫旭

一.CSS元素隐藏 在CSS中,让元素隐藏(指屏幕范围内肉眼不可见)的方法很多,有的占据空间,有的不占据空间:有的可以响应点击,有的不能响应点击.后宫选秀——一个一个看. { display: none; /* 不占据空间,无法点击 */ } { visibility: hidden; /* 占据空间,无法点击 */ } { position: absolute; clip:rect(1px 1px 1px 1px); /* 不占据空间,无法点击 */ } { position: absolut

浅谈在网页中你所不知道的css背景属性

在很多网页设计中,很多人对于css的背景属性,只是停留在设置背景.今天我们来谈谈它的其他应用. 比如背景的定位,它能实现很多翻转网页效果. background-position:指定背景图像的位置background-size 指定背景图片的大小background-image 指定要使用的一个或多个背景图像background-repeat 指定如何重背景图像background-origin 指定背景图像的定位区域background-clip 指定背景图像的绘画区域background-

你可能不知道的 css 内容块

position 我们都知道元素都拥有 position 这个 css 属性,先来看看他的基本定义和可用值. 定义 position 决定了元素位置是如何被渲染的 可用值 static: 默认值,元素在文档流中依次渲染 absolute: 元素位置相对于其最近的非 static 的父元素 fixed: 元素位置相对于浏览器窗口 relative: 元素位置相对于原本应该渲染的位置 sticky: 根据滚动的位置在 relative 和 fixed 之间切换 initial: 设置为默认值 inh

移动端开发,几个你可能不知道的CSS单位属性。

1. rem "em" 单位是我们开发中比较常用到的,它表示以当前元素的父元素的单位大小为基准来设置当前元素的大小:“rem” 中的 “r” 代表 “root”,它表示以根(即“html”)元素的单位大小为基准来设置当前元素的单位大小,所以不管当前元素是任意子节点,一旦设单位大小为 “rem” 那么这个元素大小都是以根元素单位为参考的,这里的 “em” 和 “rem” 均具有继承性. 2. vw 和 vh(移动端开发个人最喜欢的单位属性,也是这次介绍的重点) 传统的响应式开发中,我们常

CSS你可能还不知道的一些知识点--转

作者:软谋教育出处:http://www.cnblogs.com/ruanmou CSS你可能还不知道的一些知识点 一.特殊选择器 1.* 用于匹配任何的标记 2.> 用于指定父子节点关系 3.E + F 毗邻元素选择器,匹配所有紧随E元素之后的同级元素F 4.E ~ F 匹配所有E元素之后的同级元素F 5.名称[表达式] 5.1 E[att] 匹配所有具有att属性的E元素([att]获取所有的定义了att的标签:E[att=val] 匹配所有att属性等于“val”的E元素: 5.2 [at

overflow:hidden 你所不知道的事

overflow:hidden 你所不知道的事 overflow:hidden这个CSS样式是大家常用到的CSS样式,但是大多数人对这个样式的理解仅仅局限于隐藏溢出,而对于清除浮动这个含义不是很了解. 一提到清除浮动,我们就会想到另外一个CSS样式:clear:both,我相信对于这个属性的理解大家都不成问题的.但是对于“浮动”这个词到底包含什么样的含义呢?我们下面来详细的阐述一下. <div id="wai"> <div id="nei">

你所不知道的html5与html中的那些事(二)

文章简介: 关于html5相信大家早已经耳熟能详,但是他真正的意义在具体的开发中会有什么作用呢?相对于html,他又有怎样的新的定义与新理念在里面呢?为什么一些专家认为html5完全完成后,所有的工作都可以达到真正的云方式呢?这一系列的问题你是否已经想明白了呢? 本系列文章将为您一一解答你所不知道的关于html5与html中的那些事;具体会包括如:html5新的理念与想法,html5的新标签的用意与具体开发中场景应用,html5与css3的感情经历(用法搭配),包括html5的父亲html的一些