预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

CSS浮动属性Float详解什么是浮动?浮动是css的定位属性。我们可以看一下印刷设计来了解它的起源和作用。印刷布局中文本可以按照需要围绕图片。一般把这种方式称为“文本环绕”。这是一个例子:在排版软件里面存放文字的盒子可以被设置为允许图文混排或者无视它。无视图文混排将会允许文字出现在图片的上面就像它甚至不会在那里一样。这就是图片是否是页面流的一部分的区别。网页设计与此非常类似。在网页设计中应用了CSS的float属性的页面元素就像在印刷布局里面的被文字包围的图片一样。浮动的元素仍然是网页流的一部分。这与使用绝对定位的页面元素相比是一个明显的不同。绝对定位的页面元素被从网页流里面移除了就像印刷布局里面的文本框被设置为无视页面环绕一样。绝对定位的元素不会影响其它元素其它元素也不会影响它无论它是否和其它元素挨着。像这样在一个元素上用CSS设置浮动:#sidebar{float:right;}fload属性有四个可用的值:Left和Right分别浮动元素到各自的方向None(默认的)使元素不浮动Inherit将会从父级元素获取float值。浮动的用处除了简单的在图片周围包围文字浮动可用于创建全部网页布局。浮动对小型的布局同样有用。例如页面中的这个小区域。如果我们在我们的小头像图片上使用浮动当调整图片大小的时候盒子里面的文字也将自动调整位置:同样的布局可以通过在外容器使用相对定位然后在头像上使用绝对定位来实现。这种方式中文本不会受头像图片大小的影响不会随头像图片的大小而有相应变化。清除浮动清除(clear)是浮动(float)的相关属性.一个设置了清除浮动的元素不会如浮动所设置的一样向上移动到浮动元素的边界而是会忽视浮动向下移动。如下一图顶千言。上例中侧栏向右浮动并且短于主内容区域。页脚(footer)于是按浮动所要求的向上跳到了可能的空间。要解决这个问题可以在页脚(footer)上清除浮动以使页脚(footer)待在浮动元素的下面。#footer{clear:both;}清除(clear)也有4个可能值。最常用的是both清楚左右两边的浮动。left和right只能清楚一个方向的浮动。none是默认值只在需要移除已指定的清除值时用到。inherit应该时第五个值不过很奇怪的是IE不支持(这个不奇怪吧IE从来都这么特立独行吧-糖伴西红柿注)。只清除左边或右边的浮动实际中很少见不过绝对有他们的用处。伟大的塌陷使用浮动(float)的一个比较疑惑的事情是他们怎么影响包含他们的父元素的。如果父元素只包含浮动元素那么它的高度就会塌缩为零。如果父元素不包含任何的可见背景这个问题会很难被注意到但是这是一个很重要的问题。塌陷的直观对立面更不好看看下面的情况:当上面的块级元素自动扩展以适应浮动元素时段落间的文本流中会出现非自然的空白换行而且没有有效的方法来修正这个问题。对于这种情况设计师的抱怨会更甚于对塌陷的抱怨(没理解不是设计完成之后才会进行页面编码吗?-糖伴西红柿)。为了防止怪异的布局和跨浏览器的问题塌陷问题几乎总是被要处理的。我们在容器中的浮动元素之后容器结束之前来清除浮动。清除浮动的技术如果你很明确的知道接下来的元素会是什么可以使用clear:both;来清除浮动。这个方法很不错它不需要hack不添加额外的元素也使得它有良好的语义性。当然事情并不是都可以这样解决的工具箱中还是需要另外几个清除浮动的工具。空div方法从字面来看是一个空的div。。有时可能会用或者一些其他元素但是div是最常用的因为它没有浏览器默认样式;没有特殊功能而且一般不会被css样式化。这个方法因为只是为了表现对页面没有上下文涵义而被纯语义论者嘲笑。诚然从严格的角度来说他们是对的但是这个方法有效而且没有任何伤害。overflow方法在父元素上设置overflow这个css属性。如果父元素的这个属性设置为auto或者hidden父元素就会扩展以包含浮动。这个方法有着较好的语义性因为他不需要额外元素。但是如果需要增加一个新的div来使用这个方法其实就和空div方法一样没有语义了。而且要记住overflow属性不是为了清除浮动而定义的。要小心不要覆盖住内容或者触发了不需要的滚动条。简单清除方法使用了一个聪明的css伪选择符(:after)来清除浮动。比起在父元素上设置overflow只需要给它增加一个额外的类似于”clearfix”的类。这个类使用如下css:.clearfix:after{content:".";visibility:hidden;display:block;height:0;clear:both;}这会在清除浮动的父元