在div 块级元素中,一般我们的div块都是流式的,如果你设定一个div,接下来的div就会另起行,也就是块级元素的定义

但是一般排版不是这样的,最典型的应该就是这种布局了,那么中间的那三个div块,就是float的效果了

 

 

 

 

首先一个简单的例子

 

 

这个就是典型的div块分布(有三个div)

然后如果在float2加上float:left的话,效果就会变成下面这样

float使你设置的元素脱离了父级元素(本来这里float2是最大的div的子级元素)

 

 

float的属性有left,right,none;

那么就可以解决上面第一张图中间的布局,但是这里还有一个问题,就是下面的注脚,

如果直接div不设置任何东西的话,而中间的三个div都设置float:left的话,结果就是这样

那个黄色的注脚隐藏在三个div后面

 

 

这就是前面说的float使得前面三个div脱离父级元素,因此footer成为banner后面的块级元素,

这时,如果想清除float对div的影响,可以用clear:both;(也可以单独设一个div,设定属性clear:both就可以清除影响)

 

这时就完成了第一张图片的布局

注意,如果只是设置一个div的float的话,接下来的div会环绕着这个设置了float的div,如下图

最后,贴个第一张图的样式代码

 body{
background:#2286c6;
margin:0px;
padding:0px;
font-size:12px;
font-family:Arial;
}
#container{
margin:0px auto;
width:780px;
height:600px;
text-alignment:left;
background:#123456; }
#banner{
margin:0px;
padding:0px;
background:#778899;
height:150px;
width:100%;
}
#globlink{
margin:0px;
padding:0px;
background:#567;
height:50px;
width:100%;
}
#left{
width:200px;
height:370px;
background:red;
margin:0px;
padding:0px 0px 5px 0px ;
color:#d8ecff;
float:left;
} #middle{
width:400px;
height:370px;
background:blue;
margin:0px 2px ;
padding:0px 0px 5px 0px ;
color:#d8ecff;
float:left;
}
#right{
width:176px;
height:370px;
background:pink;
margin:0px ;
padding:0px 0px 5px 0px ;
color:#d8ecff;
float:left;
}
#footer{
width:100%;
height:30px;
background:yellow;
margin:1px 0px 0px 0px ;
padding:1px 0px ;
color:#d8ecff;
clear:both;
}

 

关于float和position的更多相关文章

  1. CSS传统布局之display属性+float属性+position属性

    这三个属性是传统网页布局中经常用到的属性. 读这篇文章之前,希望你对css布局模型已经有了一定的了解.因为本文的三个属性是和css三个布局模型紧密联系在一起的.因此,如若你并不了解,我推荐你先看一下c ...

  2. float和position谁好?

    float从字面上的意思就是浮动,float能让元素从文档流中抽出,它并不占文档流的空间,典型的就是图文混排中文字环绕图片的效果了.不过需要注意的是清除浮动是我们可能需要注意的地方.而position ...

  3. CSS布局模型学习(Float、Position、Flexbox)

    一.Floatfloat 属性定义元素在哪个方向浮动.以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动.浮动元素会生成一个块级框,而不论它本身是何种元素. 清除浮 ...

  4. inline元素、inline-block元素在float、position:fixed、position:absolute之后出现的问题

    我们知道内联元素是不能设置宽.高的,但是一旦使其脱离了文档流,就可以了,这是因为它已经变成了块级元素. 例1: <!DOCTYPE html> <html lang="en ...

  5. CSS 盒子模型及 float 和 position

    ## CSS和模型 ##CSS盒模型本质上是一个盒子,封装周围的 HTML 元素,包括 外边距(marign),边框(border),填充(padding),内容物(content) 盒子模型的类型: ...

  6. CSS 中,用 float 和 position 的区别是什么?

    CSS 中,用 float 和 position 的区别是什么? 呃,其实这个命题有误,只有position才是定位,float不能说是定位,不过你可以说这两种布局方式有什么不同.float和posi ...

  7. float与position间的区别

    float与position间的区别:    个人理解为:脱离文档流不一定脱离文本流:但脱离文本流,则也脱离文档流.[如有更好的理解还望评论区一起探讨,共同学习进步]一.float 浮动(脱离文档流, ...

  8. float和position:absolute脱离文本流的区别

    float和position:absolute脱离文本流的区别原创 paediatrician 最后发布于2016-09-19 10:43:05 阅读数 5375 收藏展开 文档流:将窗体自上而下分成 ...

  9. [转][译]关于CSS中的float和position和z-index

    原文:http://learn.shayhowe.com/advanced-html-css/detailed-css-positioning 当构建页面排版时,有不同的方法可以使用.使用哪一种方法取 ...

  10. CSS:布局的三个关键属性:float、position、display

    最近在出差,就我一个在这里.客户要做几个页面,涉及到了页面的布局问题,没办法自己得做了.然后就遇到了一些问题.页面不论怎么都不能按照设想的布局. 以前也没有做过网页布局方面的工作.上网上找类似的例子, ...

随机推荐

  1. 关于Django模板引擎的研究

    原创博文,转载请注明出处. 以前曾遇到过错误Reverse for ‘*’ with arguments '()' and keyword arguments' not found.1其原因是没有给视 ...

  2. Event对象的事件句柄

    <html> <!-- onresize 事件会在窗口或框架被调整大小时发生 --> <!--onresize="alert('窗口的大小得到变化就会执行我') ...

  3. 解决android studiogradle 错误 找不到程序包 符号

    问题:android studio gradle 错误 找不到程序包 符号解决:原因是library工程的build.gradle含有release,只要把其注释即可 buildTypes { rel ...

  4. linux 安装svn,并设置钩子来同步更新

    linux安装svn下载 http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz 和 http://subversion.tigr ...

  5. Cassandra

    NoSQL之Cassandra   9月初听了一个讲座,演讲者是张月同学,他给我们分享了Cassandra nosql数据库,讲得很精彩,听完之后收益良多. Cassandra是一个noSQL数据库, ...

  6. sql 通过存储过程和自定义类型批量新增数据

    1,建立存储过程 create PROCEDURE [dbo].[p_Company_Insert] @CompanyCollection [CompanyTableType] READONLY AS ...

  7. Leapin' Lizards

    Leapin' Lizards 题目大意: 在一个网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外. 每行每列中相邻石柱的距离为1,蜥蜴的跳跃距离是d,即蜥蜴 ...

  8. 【C#】调用DOS命令

    public interface IRunConsole { void Run(); } public abstract class RunConsole:IRunConsole { public a ...

  9. iOS app 发布错误 ERROR ITMS-90167: "No .app bundles found in the package"

    今天iOS 上传 APP 突然发生了这个错误,在排查非证书错误后感到非常奇怪, 因为昨天刚刚上传了另一个APP,一切正常. 仔细回忆了下 昨天和今天唯一的不同就是我升级了 电脑操作系统至 macOS ...

  10. #define命令的一些高级用法

    =========================================================== define中的三个特殊符号:#,##,#@ ================= ...