清理浮动的方法

浮动出现的原因:

一开始浮动被创建的原因是为了实现报纸文字环绕图片的格式,如下图, 后来经过大家的学习研究后才发展出了后来的一系列功能。

盒子浮动清理:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <style type="text/css">
        .wrapper{
            border: 5px solid salmon;
        }
        .wrapper .red{
            width: 100px;
            height: 100px;
            background-color: lightblue;
            float: left;
            margin-right: 10px;
        }
    </style>
    <body>
        <div class="wrapper">
            <div class="red"></div>
            <div class="red"></div>
        </div>
    </body>
</html>

未清理浮动前

清理浮动的方法:

1、伪元素 ::after

.wrapper::after{
    content: "";
    display: block;
    clear: both;
}

2、触发BFC

1)overflow:hidden;

.wrapper{
    overflow: hidden;
}

2) float:left/right  或者  position:fixed/absolute (父级元素会被内部改为 inline-block )

注意:在使用BFC清理浮动时,需要配合实际需要,只有实际情况允许的时候选择BFC才可以,比如:如果要求父级元素必须为 block时,就不可以用float 或者position ;

3、块级元素style 添加 clear:both;(不推荐,这样会改变html结构)

在wrapper 盒子内最下面加  <p style="clear: both;"></p>;

原文地址:https://www.cnblogs.com/xingyue525/p/10924906.html

时间: 2024-10-11 04:02:24

清理浮动的方法的相关文章

三种清理浮动的方式

在页面布局时,我们常常会遇到这样一个问题:对子元素采用浮动之后两者会脱离文档流,导致父元素因为没有内容而收缩,隐藏掉我们设置的背景和其他相关样式.这个时候,我们为了清除浮动的影响,一般有以下三种方法: 方法一:添加一个进行清理的元素(例如一个段落标签或换行标签),r然后用clear属性进行清理. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xht

清理浮动的三种常用方法以及如何居中一个浮动元素

千里之行始于足下 今天看到一个题目说如何居中一个float:left的元素的题目,我蛮以为用margin:0 auto 就可以解决了.然而,试验之后,发现事实并非如此,才发现自己对于这方面的知识竟是相当忙乱!于是撇下手头事务,翻书查资料温习了这部分‘简单’的内容.并总结如下. 一.清理浮动的三种方法. 当给元素设置了float属性之后,我们知道,元素便会脱离文档流的束缚,像一片水中浮动的树叶随波逐流.但是,在浮动的情况下,可能会导致网页内容出现一些我们并不想让其发生的干扰,例如其父元素的包裹作用

清除浮动的方法-那些年我们一起清除过的浮动

浮动(float),一个我们即爱又恨的属性.爱,因为通过浮动,我们能很方便地布局: 恨,浮动之后遗留下来太多的问题需要解决,特别是IE6-7(以下无特殊说明均指 windows 平台的 IE浏览器).也许很多人都有这样的疑问,浮动从何而来?我们为何要清除浮动?清除浮动的原理是什么?本文将一步一步地深入剖析其中的奥秘,让浮动使用起来更加得心应手.一.清除浮动 还是 闭合浮动 (Enclosing float or Clearing float)?很多人都已经习惯称之为清除浮动,以前我也一直这么叫着

Css学习之清除浮动的方法详解

本文和大家分享的主要是css中浮动清除相关内容,一起来看看吧,希望对大家学习css http://www.maiziedu.com/course/web/有所帮助. 当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象.这个现象叫浮动溢出,为了防止这个现象的出现而进行的CSS处理,就叫CSS清除浮动. #div { background-color: blu

清除浮动 float 方法

清除浮动方法 方法一:使用带clear属性的空元素 在浮动元素后使用一个空元素如<div class="clear"></div>,并在CSS中赋予.clear{clear:both;}属性即可清理浮动.亦可使用<br class="clear" />或<hr class="clear" />来进行清理. .news { background-color: gray; border: solid 1

清理浮动(闭合浮动)

因为将子元素都设置为浮动后,父元素内部就好像没有东西了,被掏空了,无法被子元素撑起来.所以就会出现塌陷的情况. <!DOCTYPE html> <html> <head> <title></title> <style type="text/css"> .first, .second { float:left; background:red; width:100px; height:50px; margin:10px

为什么清浮动?清浮动的方法是什么?哪一种是终极方法?

浮动(float),一个我们即爱又恨的属性.爱,因为通过浮动,我们能很方便地布局: 恨,浮动之后遗留下来太多的问题需要解决,特别是IE6-7(以下无特殊说明均指 windows 平台的 IE浏览器).也许很多人都有这样的疑问,浮动从何而来?我们为何要清除浮动?清除浮动的原理是什么?本文将一步一步地深入剖析其中的奥秘,让浮动使用起来更加得心应手. 一.清除浮动 还是 闭合浮动 (Enclosing float orClearing float)? 很多人都已经习惯称之为清除浮动,以前我也一直这么叫

清浮动的方法

浮动原理及清浮动 浮动: left/right/none 元素加了浮动,会脱离文档流(文档流是文档中可显示对象在排列时所占用的位置) ,按照指定的一个方向移动直到碰到父级的边界或者另外一个浮动元素停止 1.使块元素在一行显示:  2.使内嵌支持宽高:  3.不设置宽度的时候宽度由内容撑开:  4.脱离文档流 : 5.提升层级半层. 清浮动的方法  1.加高  问题:扩展性不好 2.父级浮动  问题:页面中所有元素都加浮动,margin左右自动失效 3.inline-block 清浮动方法:  问

CSS清除浮动各种方法

当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象.这个现象叫浮动溢出,为了防止这个现象的出现而进行的CSS处理,就叫CSS清除浮动. #div { background-color: blueviolet; } #div p { width: 100px; height: 100px; background-color: red; float: righ