说到浮动之前,先说一下CSS中margin属性的两种特殊现象

1, 外边距的合并现象:

如果两个div上下排序,给上面一个div设置margin-bottom,给下面一个div设置margin-top,那么两个margin会发生合并现象,合并以后的值较大的那个。

对于这种现象一般不用处理。

2,margin塌陷现象:

如果一个大盒子中包含一个小盒子给小盒子设置margin-top大盒子会一起向下平移。

解决方案:

1.0给大盒子加一个边框border属性。

2.0给大盒子设置一个overflow属性。

3.0使用浮动。

补充:overflow的常用属性如下:

 

visible

:默认值。内容不会被修剪,会呈现在元素框之外。

Hidden:

内容会被修剪,并且其余内容是不可见的。

Scroll:

内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。

Auto:

如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。

浮动

浮动是css中的一个重点,为什么要使用浮动?

是为了解决一行中显示多个盒子的问题。

float:left;      float :right;

浮动有三个特点:

1,脱离标准流,不占位置。

2,会改变元素的默认显示方式display为block块级元素。

3, 浮动的元素只会覆盖后边的块级元素,不影响前边的块级元素。

什么是标准流?

就是浏览器默认摆放盒子的标准。

标准流的特点:

1,块级元素从上到下,独占一行。

2,行内元素,行内块级元素从左到右在一行中显示。

3,占位置。

浮动的影响以及清除浮动的三种办法

浮动对页面的影响:

如果一个父盒子中有一个子盒子,并且父盒子没有设置高,子盒子在父盒子中进行了浮动,那么将来父盒子的高度为0.由于父盒子的高度为0,下面的元素会自动补位,所以这个时候要进行浮动的清除。

Clear:both

1,使用额外标签法:

在浮动的盒子之下再放一个标签,在这个标签中使用clear:both,来清除浮动对页面的影响。

.clearfix{

clear: both;

}

<div class="clearfix"></div>

a.内部标签:会将这个浮动盒子的父盒子高度重新撑开

b.外部标签:会将这个浮动盒子的影响清除,但是不会撑开父盒子。

注意:一般情况下不会使用这一种方式来清除浮动。因为这种清除浮动的方式会增加页面的标签。

2,使用overflow属性来清除浮动:

先找到浮动盒子的父元素,再在父元素中添加一个属性,就是清除这个父元素中的子元素浮动对页面的影响。

overflow: hidden;

3,使用伪元素来清除浮动:

.clearfix:after {

content: "";//添加内容为空

height: 0;//内容高度为0

line-height: 0;//内容文本的高度为0

display: block;//将文本设置为块级元素

clear: both;//清除浮动

visibility: hidden;//将元素隐藏

}

.clearfix {

zoom: 1;/*为了兼容ie6*/

}

   

visible

:默认值。内容不会被修剪,会呈现在元素框之外。

Hidden:

内容会被修剪,并且其余内容是不可见的。

Scroll:

内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。

Auto:

如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。

css中的浮动与三种清除浮动的方法的更多相关文章

  1. CSS3中为什么要清除浮动以及三种清除浮动(float)的方法

    方法一:添加新的元素 .应用 clear:both .clear{ clear:both; height: 0; height: 0; overflow:hidden; } 方法二:父级div定义 o ...

  2. css浮动(folat),清除浮动(clear)(另加两种清除浮动方式,总共三种清除浮动方式)

    css浮动(float) float是css样式,用于设置标签的居左浮动和居右浮动,浮动后的元素不属于html文档流,需要用清除浮动把文档拽回到文档流中 浮动值: left:向左浮动 right:向右 ...

  3. CSS3中三种清除浮动(float)影响的方式

    float是HTML中布局的一大关键,很多难题一旦用上float都能很愉快地解决.但是凡是好用的,也容易出错.比如当子元素都为float时,其父元素会受影响,或者偶尔会发现自己某个div的高度变成了0 ...

  4. CSS3中三种清除浮动(float)的方法

    方法一:添加新的元素 .应用 clear:both .clear{ clear:both; height:; height:; overflow:hidden; } 方法二:父级div定义 overf ...

  5. 关于CSS中float的两点心得以及清除浮动的总结

    对一个元素运用float后,该元素将脱离正常文档流,这意味着: 1. 运用float后,该元素不再影响父元素的高度,如果一个元素的所有子元素都是float的话,那么该元素的高度是0,这样后面元素渲染的 ...

  6. css 三(清除浮动专题)

    1.  三个关于浮动的概念  不浮动float:none; 清除周围的浮动元素   float:both   这是清除浮动的本意 清除子元素浮动对父元素的影响  clearfix    很多人都理解成 ...

  7. css考核点整理(一)-浮动的理解和清除浮动的几种方式

    浮动的理解和清除浮动的几种方式 clear语法:clear : none | left | right | both 取值:none : 默认值.允许两边都可以有浮动对象left : 不允许左边有浮动 ...

  8. CSS中浮动属性float及清除浮动

    1.float属性 CSS 的 Float(浮动),会使元素向左或向右移动,由于浮动的元素会脱离文档流,所以它后面的元素会重新排列. 浮动元素之后的那些元素将会围绕它,而浮动元素之前的元素将不会受到影 ...

  9. CSS中隐藏内容的3种方法及属性值

    CSS中隐藏内容的3种方法及属性值 (2011-02-11 13:33:59)   在制作网页时,隐藏内容也是一种比较常用的手法,它的作用一般有:隐藏文本/图片.隐藏链接.隐藏超出范围的内容.隐藏弹出 ...

随机推荐

  1. 从I/O复用谈epoll为什么高效

    上一篇文章中,谈了一些网络编程的基本概念.在现实使用中,用的最多的就是I/O复用了,无非就是select,poll,epoll 很多人提到网络就说epoll,认为epoll效率是最高的.单纯的这么认为 ...

  2. TechEmpower 13轮测试中的ASP.NET Core性能测试

    应用性能直接影响到托管服务的成本,因此公司在开发应用时需要格外注意应用所使用的Web框架,初创公司尤其如此.此外,糟糕的应用性能也会影响到用户体验,甚至会因此受到相关搜索引擎的降级处罚.在选择框架时, ...

  3. 【.net 深呼吸】启动一个进程并实时获取状态信息

    地球人和火星人都知道,Process类既可以获取正在运行的进程,也可以启动一个新的进程.在79.77%应用场合,我们只需要让目标进程顺利启动就完事了,至于它执行了啥,有没有出错,啥时候退出就不管了. ...

  4. spring源码分析之<context:property-placeholder/>和<property-override/>

    在一个spring xml配置文件中,NamespaceHandler是DefaultBeanDefinitionDocumentReader用来处理自定义命名空间的基础接口.其层次结构如下: < ...

  5. js attribute 和 jquery attr 方法

    attribute 是原生js dom 对象上的一个属性,这个属性有很多子属性,比如 isId(判断属性是否是Id) , name (获取属性名称) , value (获取属性值),attribute ...

  6. 简单酷炫的canvas动画

    作为一个新人怀着激动而紧张的心情写了第一篇帖子还请大家多多支持,小弟在次拜谢. 驯鹿拉圣诞老人动画效果图如下 html如下: <div style="width:400px;heigh ...

  7. background例子

  8. exp/imp 与 expdp/impdp 区别

    在平常备库和数据库迁移的时候,当遇到大的数据库的时候在用exp的时候往往是需要好几个小时,耗费大量时间.oracle10g以后可以用expdp来导出数据库花费的时间要远小于exp花费的时间,而且文件也 ...

  9. MongoDB学习笔记五—查询上

    数据准备 { , "goods_name" : "KD876", "createTime" : ISODate("2016-12- ...

  10. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...