相信许多许多Web前端的朋友一定被float这个属性给困扰过吧,有时候用它来布局很方便,能够实现元素快速的水平排列,但有时候它又像一个精灵,让人无法琢磨透它方位。在网上也看了一些关于float的帖子,感觉这一篇写得不错,特此推荐给大家:http://www.zhangxinxu.com/wordpress/2010/01/css-float%E6%B5%AE%E5%8A%A8%E7%9A%84%E6%B7%B1%E5%85%A5%E7%A0%94%E7%A9%B6%E3%80%81%E8%AF%A6%E8%A7%A3%E5%8F%8A%E6%8B%93%E5%B1%95%E4%B8%80/

接下来就用实际例子说说float平时的常用之处:

<div class=“div”> <div class="div6"></div>
<div class="div7"></div>
<div class="div8"></div>
<div>


.div1{
height: 2000px;
width: 960px;
outline: solid blue;
}
.div6{
height: 100px;
width: 100px;
outline: solid blue;
float: left;
}
.div7{
height: 200px;
width: 200px;
outline: solid red;
float: left; }
.div8{
float: left;
width: 50px;
height: 50px;
outline: solid black;
}

(一)有一个大的盒子,里面包含三个大小不同的框,将这三个框分别浮动后,效果如下:

可以把浮动的作用看做是退休!如果三个框不使用浮动,那么他们将按照块级元素的特点,呈垂直排列。这就好比一个干部班子,一级一级的从上向下排列。一旦使用float功能后,就如同让干部退休。1号干部退休(float)后,把权力让给了2号,2号退休后,把权力给了3号。最后,三人都是同级别的退休干部,呈水平排列。

当然,如果1号退休后把权力交给2号,2号一致赖着权力不放(float="none"),那么将会出现这样的情况:

1号虽然退休,但终究还有个位置,2号无法完全将其位置占据,使自己显示全部出,而3号等不到2号退休,只能在下面干坐着。

(二)可想而知,如果三个框都浮动了,再在下面加如下一串代码:

.div2{
height: 300px;
width: 200px;
outline: solid blue;
background-color: aqua;}
那么下面的框会自动向上,夺取权力:

那么问题来了,如果1,2,3在退休后,又不想让4来继承权力,应该怎么办呢?好办~ 去拉来一个强悍的“爸爸”罩着他们。也就是可以将1,2,3装在一个框架内:<div class="W"    <div class="div6">1</div>

    <div class="div7">2</div>    <div class="div8">3</div></div>

慢着,找来了W爸爸,总要告诉他自己需要保护吧。所以需要出发W爸爸的保护机制:
方法一:.W{overflow:hidden}
方法二:.W{display:inline-block}

这样的话,4就会乖乖的呆在下面了。

(三)float实现图文混排。(或者是文字包裹图像)
先看代码:
<p style="display: inline-block;width: 300px;outline:solid"><span style="display: inline-block;width: 100px;height: 100px;background-color: blue"></span>博客园是面向开发者的知识分享社区,不允许发布任何推广、广告、政治方面的内容。
博客园首页(即网站首页)只能发布原创的、高质量的、能让读者从中学到东西的内容。
如果博文质量不符合首页要求,会被工作人员移出首页,望理解。如有疑问,请联系contact@cnblogs.com。
</p>
效果如下:

由于图片的宽度小于p标签的宽度,所以默认会有部分文本与图片的地段对其显示。如果想要实现图片与p标签右边空白部分全部由文本填充,可以对图片进行浮动处理:
span{float:left}

图片向左浮动后,高度不存在了,文字置顶开始排列。W3C的解释是float之后,元素不占空间,但从此例来看,如果浮动后不占空间,那么文字为何没有从最左边开始排列。还是形象的看成,一个人虽然退休了,但它终究还存在在世上,离开了原来的工作岗位,但是却还是实实在在的存在。所以文字会绕道而行。。。。。关于float,以后还需进行深入的探索

浅谈css float的更多相关文章

  1. 转:浅谈CSS在前端优化中一些值得注意的关键点

    前端优化工作中要考虑的元素多种多样,而合理地使用CSS脚本可以在很大程度上优化页面的加载性能,以下我们就来浅谈CSS在前端优化中一些值得注意的关键点: 当谈到Web的“高性能”时,很多人想到的是页面加 ...

  2. 浅谈CSS模块化

    为什么要CSS模块化? 你是否为class命名而感到苦恼? 你是否有怕跟别人使用同样class名而感到担忧? 你是否因层级结构不清晰而感到烦躁? 你是否因代码难以复用而感到不爽? 你是否因为commo ...

  3. [浅谈CSS核心概念] CSS布局模型:float和position

    1.流动模型 HTML元素在默认情况下都是按照"流动模型"进行布局的,网上也有人称之为"普通流"."文档流"之类的.这种布局模式的特点在于: ...

  4. 浅谈css中的position

    什么是position,根据css 2.1中的描述,position和float的值决定了浏览器要采用那种定位算法来计算元素盒子的具体位置.先避开float不谈,本文主要介绍position属性的不同 ...

  5. 浅谈css中的盒模型(框模型)

    css中的盒模型是css的基础,盒模型的理解可以帮助我们进行对样式进行修改.废话不多说,进入正题: 在w3c中,CSS 框模型 (Box Model) 规定了元素框处理元素内容.内边框.边框 和 外边 ...

  6. 浅谈css的栅格布局

    栅格布局想必大家都很了解,我们做页面开发的时候,往往对页面板式的要求很高,如何对各个区域的内容排版,并使之对齐是我们的一大难题.而栅格系统就是我们排版的利器,他支持自动对齐.自动计算边距.流式布局等优 ...

  7. 浅谈css的预编译---less语言

    正如各位所知道的一样,css是一门标记性语言,语法相对简单,对使用者的要求也比较低 .不过可乐不知道友友们有没有发现,在使用css的时候需要书写大量看似没有逻辑的代码,不方便维护及扩展,不利于复用,尤 ...

  8. 浅谈css盒模型

    在我们网页上的每一个元素,一个按钮,一段文本,一张图片等等,浏览器都将它们当做一个“盒子”看待,并把这样的盒子称为盒模型(box model).使用Chrome的右键>审查元素对某个网页上的元素 ...

  9. 浅谈CSS布局

    在No.4中谈及了下盒子模型,引出布局模型 1.布局模型有三类: 1)流动模型  flow(默认) 2)浮动模型  float 3)层模型  layer 2.文档流 :指的是文本沿着从左到右的方向展开 ...

随机推荐

  1. C#操作PowerDesigner代码

    首先,程序的界面如下:

  2. 学生选课数据库SQL语句练习题

    一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...

  3. webpack快速入门(二):使用入门

    继续之前请确认你已经安装了nodejs 安装.初始化: 然后找个目录新建名为webpack-demo的文件夹,然后在命令行下进入该目录,执行以下命令: npm init -y npm install ...

  4. 020:Buffer Pool 、压缩页、CheckPoint、Double Write、Change Buffer

    一. 缓冲池(Buffer Pool) 1.1 缓冲池介绍 每次读写数据都是通过 Buffer Pool : 当Buffer Pool 中没有用户所需要的数据时,才去硬盘中获取: 通过 innodb_ ...

  5. MongoDB day02

    1.非关系型数据库和关系型数据库比较 1. 不是以关系模型构建的,结构自由 2. 非关系型数据库不保证数据的一致性 3. 非关系型数据库可以在处理高并发和海量数据时弥补关系型数据库的不足 4. 非关系 ...

  6. Oracle 10g RAC TAF

    Oracle RAC 同时具备HA(High Availiablity) 和LB(LoadBalance). 而其高可用性的基础就是Failover(故障转移). 它指集群中任何一个节点的故障都不会影 ...

  7. Ceph的工作原理及流程

    本文将对Ceph的工作原理和若干关键工作流程进行扼要介绍.如前所述,由于Ceph的功能实现本质上依托于RADOS,因而,此处的介绍事实上也是针对RADOS进行.对于上层的部分,特别是RADOS GW和 ...

  8. jquery制作滚动条到一定位置触发

    $(function(){ var nav=$(".nav"); //得到导航对象 var win=$(window); //得到窗口对象 var sc=$(document);/ ...

  9. HALCON初步:算子参数部分三个冒号的意义

    HALCON中存在两类基本变量:图像变量(iconic data)和控制变量(control data),其中图像变量包括image, region和XLD contours,控制变量包括intege ...

  10. 在EXCEL中使用SQL语句查询

    SQL语句在数据库使用中十分重要. 在EXCEL中可以不打开工作簿,就获取数据,对多工作簿操作很用,也很快. 对大量数据处理,比循环快很多,但是比词典方法还有点距离(可惜我还没有学会词典). 对数据库 ...