1. 浮动

浮动是css的布局功能,在CSS中,包括div在内的任何元素都可以浮动的方式显示。它能够改变页面中对象的前后流动顺序。浮动元素会脱离文档流,不占据空间。浮动元素可以左右移动,直到碰到包含它的边框或者浮动元素的边框停留。

2. 浮动可能带来的问题

父元素的高度无法撑开,影响与父元素同级的元素;与浮动元素同级的非浮动元素会紧跟其后,可能导致看不到非浮动元素的情况;浮动元素可能会影响到页面的整理布局效果

3. 清除浮动影响的方法

(1)使用空标签清除浮动

在所有浮动标签后面添加一个空标签,样式设置为clear:both;,如<div style="clear:both;"></div>此方法增加了无意义的标签,与HTML5语义化标签相违背。

(2)使用overflow或者display:table

给包含浮动元素的父标签添加css属性 overflow:auto/overflow:hidden; zoom:1;使用该属性来闭合浮动,触发BFC/haslayout。使用 zoom:1 兼容IE6,大多数情况下它能在不影响现有环境的条件下激发元素的 haslayout。display:table 本身并不会创建BFC,但是它会产生匿名框(anonymous boxes),而匿名框中的display:table-cell可以创建新的BFC。

(3)将父元素也设置为浮动

float:left/float:right 将父元素也设置为浮动就可以包含浮动内容;

(4)使用伪元素:after

其中必须为需要清除浮动元素的伪对象中设置 height:0,否则该元素会比实际高出若干像素;.clearfix:after{display:block;clear:both;content:”";visibility:hidden;height:0;} .clearfix{zoom:1;}

其中display:block 使生成的元素以块级元素显示,占满剩余空间;clear:both用来闭合浮动的;通过 content:" "生成内容作为最后一个元素,至于content里面是空还是点还是其他都是可以的;

visibility:hidden 使生成的内容不可见,并允许可能被生成内容盖住的内容可以进行点击和交互; height:0 ;避免生成内容破坏原有布局的高度;zoom:1 触发IE hasLayout。除了clear:both用来闭合浮动的,其他代码都是为了隐藏掉content生成的内容,也有使用font-size:0,line-height:0来隐藏内容的。

css 浮动的更多相关文章

  1. CSS浮动、定位

    这几天有空,整理了关于CSS浮动和定位的一些知识点,有什么欠缺的地方,欢迎大家批评指正. 一.文档流的概念指什么?有哪种方式可以让元素脱离文档流? 文档流,指的是元素排版布局过程中,元素会自动从左往右 ...

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

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

  3. CSS浮动讲解好文章推荐

    经验分享:CSS浮动(float,clear)通俗讲解 http://www.cnblogs.com/iyangyuan/archive/2013/03/27/2983813.html 好文推荐!

  4. css浮动布局

    上次我们一起对盒子模型进行了一定的了解,今天我们就对css浮动布局做一下研究.首先我们来了解一下网页基本布局的三种形式. 首先我们来了解一下什么是网页布局: 网页的布局方式其实就是指浏览器是如何对网页 ...

  5. CSS浮动专题!

    在css中,浮动问题可能是很多刚入门的小白比较头疼的问题. 1,首先先来介绍一下两种浮动类型:左浮动和右浮动 1) float:left;左浮动,后面的内容会流向对象的右侧 2) float:righ ...

  6. css浮动与清除浮动

    css浮动 首先,我们要知道,css中块级元素在页面中是独占一行的,自上而下排列,也就是我们所说的流,通常称为标准流. 以div为例,div是块级元素,如下: 可以清楚地看到,div是独占一行的,di ...

  7. css浮动(float)及清除浮动的几种实用方法

    CSS浮动是现在网页布局中使用最频繁的效果之一,而浮动可以帮我们解决很多问题,那么就让我们一起来看一看如何使用浮动. 一.css浮动(float) (1)html文档流 自窗体自上而下分成一行一行,并 ...

  8. Css - 浮动布局

    Css - 浮动布局 浮动布局 float 取值:left | right | none 利用float属性可设置元素的浮动,虽然浮动主要是应用于块元素,但行内元素其实也可以浮动,但行内元素本来就是一 ...

  9. CSS 浮动和清除

    CSS 浮动和清除浮动 在写页面布局的过程中,浮动是大家经常用的属性.在好多的排版布局中都是用的的浮动比如说下面这些地方都是应用到了浮动. 在我学习浮动的时候可是熬坏了脑筋,在这里我分享一下我对浮动这 ...

  10. 验分享:CSS浮动(float,clear)通俗讲解

    经验分享:CSS浮动(float,clear)通俗讲解 很早以前就接触过CSS,但对于浮动始终非常迷惑,可能是自身理解能力差,也可能是没能遇到一篇通俗的教程. 前些天小菜终于搞懂了浮动的基本原理,迫不 ...

随机推荐

  1. javascript实现有向无环图中任意两点最短路径的dijistra算法

    有向无环图 一个无环的有向图称做有向无环图(directed acycline praph).简称DAG 图.DAG 图是一类较有向树更一般的特殊有向图, dijistra算法 摘自 http://w ...

  2. LUA OOP编程实现方法

    lua原生不支持OOP特性 确实如此, 同时可以采用其它lua代码的方式实现OOP的特性. OOP四大特性 抽象 封装 继承 多态 http://www.cnblogs.com/xiaosongluf ...

  3. (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句

    (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句 在我们RDIFramework.NET代码生成器中,有这样一个应用,就是通过数据库表自动生成表的CREA ...

  4. Linux安装vim失败的解决办法

    最近想了解一下linux编程,于是linux系统下输入vim,发现竟然没有安装.好吧,那就安装吧.命令: sudo apt-get install vim 百度百科:apt-get是一条linux命令 ...

  5. leetcode105:Construct Binary Tree from Preorder and Inorder Traversal

    题目: Given preorder and inorder traversal of a tree, construct the binary tree. Note:You may assume t ...

  6. JDBC-java访问数据库

    定义:JDBC是一个独立于数据库管理系统的,通用的SQL数据库存取和操作的公共接口 (由JAVA类和接口组成,接口由各数据库厂家负责实现) 使用方法: 1.加载驱动 Class.forName(&qu ...

  7. Thinkphp---------Call to a member function free_result() on a non-object

    1.平时用框架用久了,直接执行原生的sql反而做起来反应迟钝了.今天遇到一个问题,就是直接执行一个添加的sql语句,然后我用了TP框架的M()->query();方法.运行以后,会报Call t ...

  8. Android组件间交互

    四大组件相信大家都不陌生了吧,今天咱们就组件间通信做个说明: 首先: 主要今天的目的是为了说明Android 提供的一个ResultReceiver类,这个类相信大家都不陌生吧>?但是你们层深入 ...

  9. [tp3.2.1]查询(2)

    <?php namespace Home\Controller; use Think\Controller; use Think\Model; class QueryController ext ...

  10. sysobjects中字段的含义

    --列名 数据类型 描述 name sysname --对象名. Id int --对象标识号. xtype ) --对象类型.可以是下列对象类型中的一种: C = CHECK --约束 D = -- ...