css 浮动布局,清除浮动

浮动的特性:

(1)浮动元素有左浮动(float:left)和右浮动(float:right)两种

(2)浮动的元素会向左或向右浮动,碰到父元素边界、其他元素才停下来

(3)相邻浮动的块元素可以并在一起,超出父级宽度就换行

(4)浮动让行内元素或块元素自动转化为行内块元素(此时不会有行内块元素间隙问题)

(5)浮动元素后面没有浮动的元素会占据浮动元素的位置,没有浮动的元素内的文字会避开浮动的元素,开成文字绕图的效果

(6)父元素如果没有设置尺寸(一般是高度不设置),父元素内整体浮动的元素无法撑开父元素,父元素需要清除浮动 overflow:hidden;

(7)浮动元素之间没有垂直margin的合并

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>浮动</title>
    <style type="text/css">
        .con{
            width:400px;
            height:80px;
            border:1px solid gold;
            margin:50px auto 0;
        }

        .con div{
            width:60px;
            height:60px;
            /*display:inline-block;*/
            margin:10px;

        }

        .con .box01{
            background-color:green;
            float:left;
        }

        .con .box02{
            background-color:pink;
            float:right;
        }

    </style>
</head>
<body>
    <div class="con">
        <div class="box01"></div>
        <div class="box02"></div>
    </div>
</body>
</html>

页面效果:

代码:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>新闻列表</title>

<style type="text/css">

.news_title{

width:400px;

height:40px;

border-bottom:1px solid #ff8200;

margin:50px auto 0;

}

.news_title h3{

float:left;

width:80px;

height:40px;

background-color:#ff8200;

margin:0;

font-size:16px;

color:#fff;

text-align:center;

line-height:40px;

font-weight:normal;

}

.news_title a{

float:right;

/*background-color:cyan;*/

/*width:80px;*/

/*height:40px;*/

text-align:right;

text-decoration:none;

/*line-height:40px;*/

font:normal 14px/40px "Microsoft YaHei";

color:#666;

}

.news_title a:hover{

color:#ff8200;

}

</style>

</head>

<body>

<div class="news_title">

<h3>新闻列表</h3>

<a href="#">更多></a>

</div>

</body>

</html>

页面效果:

清除浮动:

(1)父级上增加属性overflow:hidden

(2)在最后一个子元素的后面加一个空的div,给它样式属性clear.both(不推荐)

(3)使用成熟的清浮动样式类,clearfix

.clearfix:after,.clearfix:before{ content:””;display:table;}

.clearfix:after{ clear:both; }

.clearfix{ zoom:1; }

清除浮动的使用方法:

.con2{ ... overflow:hidden }

或者

<div class=”con2 clearfix”>

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>清除浮动</title>
    <style type="text/css">
        .list{
            width:210px;
            /* 不给高度出现浮动问题 */
            /*height:400px;*/
            list-style: none;
            border:1px solid #000;
            margin:50px auto 0;
            padding:0;
            /* 第一种清除浮动的方法 */
            /*overflow:hidden; !* 清除浮动 *!*/
        }

        .list li{
            width:50px;
            height:50px;
            background-color:gold;
            margin:10px;
            float:left;
        }
        /* 第三种清除浮动的方法 */
        .clearfix:after{
            content:"";
            display:table;
            clear:both;
        }

        /* 解决margin-top塌陷和清除浮动的方法合并为 */
        .clearfix:before,.clearfix:after{
            content:"";
            display:table;
        }
        .clearfix:after{
            clear:both;
        }
        /* 兼容IE清除浮动的方法 */
        .clearfix{
            zoom:1;
        }

    </style>
</head>
<body>

    <ul class="list clearfix">
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
        <li>7</li>
        <li>8</li>
        <!-- 第二种清除浮动的方法,实际开发中不用  -->
        <!--<div style="clear:both"></div>-->
    </ul>
</body>
</html>

页面效果:

原文地址:https://www.cnblogs.com/reyinever/p/10630013.html

时间: 2024-11-05 11:50:54

css 浮动布局,清除浮动的相关文章

css浮动布局,浮动原理,清除(闭合)浮动方法

css浮动 1.什么是浮动:在我们布局的时用到的一种技术,能够方便我们进行布局,通过让元素浮动,我们可以使元素在水平上左右移动,再通过margin属性调整位置 2.浮动的原理:使当前元素脱离普通流,相当于浮动起来一样,浮动的框可以左右移动,直至它的外边缘遇到包含框或者另一个浮动框的边缘 3.浮动的生成:使用css属性float:left/right/none 左浮动/右浮动/不浮动(默认) 4.浮动的影响: 不会影响未浮动的块级元素布局,但是会影响内联元素的布局 浮动后的元素可以设置宽度和高度,

css浮动和清除浮动

浮动存在的原因 在word排版中,文本可以环绕图片.在css中,想要实现文字环绕的效果,只能借助于float,没有其他的替代方式.在实际中,文档的布局经常会使用浮动. float属性 float属性,默认为none,也就是标准流通常的情况.如果将float的属性的值设置为left或right,元素就会向其父元素的左侧或右侧紧靠. inherit表示从父元素继承float属性的值. clear属性 clear 属性定义了元素的哪边上不允许出现浮动元素.在 CSS1 和 CSS2 中,这是通过自动为

CSS中的浮动和清除浮动,梳理一下!

CSS中的浮动和清除浮动,梳理一下! 第一篇就整理整理CSS中很常见的浮动以及清除浮动的一些方式吧. 浮动到底是什么? 浮动核心就一句话:浮动元素会脱离文档流并向左/向右浮动,直到碰到父元素或者另一个浮动元素.请默念3次! 浮动最初设计的目的并没那么多事儿,就只是用来实现文字环绕效果而已,如下所示: 文字环绕效果 但是早期的前端开发者发现:浮动的元素可以设置宽高并且可以内联排列,是介于inline和block之间的一个神奇的存在,在inline-block出来之前,浮动大行其道.直到inline

【转】CSS中的浮动和清除浮动

以下转自<CSS中的浮动和清除浮动,梳理一下!> 浮动到底是什么? 浮动核心就一句话:浮动元素会脱离文档流并向左/向右浮动,直到碰到父元素或者另一个浮动元素.请默念3次! 浮动最初设计的目的并没那么多事儿,就只是用来实现文字环绕效果而已,如下所示: 文字环绕效果 但是早期的前端开发者发现:浮动的元素可以设置宽高并且可以内联排列,是介于inline和block之间的一个神奇的存在,在inline-block出来之前,浮动大行其道.直到inline-block出来后,浮动也有它自己独特的使用场景.

css用clearfix清除浮动

什么是.clearfix .clearfix:after { content: "."; /*内容为"."就是一个英文的句号而已.也可以不写.*/ display: block; /*加入的这个元素转换为块级元素.*/ clear: both; /*清除左右两边浮动.*/ visibility: hidden; /*可见度设为隐藏.注意它和display:none;是有区别的.visibility:hidden;仍然占据空间,只是看不到而已:*/ line-heig

CSS浮动与清除浮动(overflow)例子

在css中浮动与清除浮动功能是我们开发中常用到的一个功能了,下面小编来为各位分析关于CSS浮动与清除浮动(overflow)例子吧. float脱离文本流,可是为什么文字却会有环绕的效果,这点实在是神奇,于是乎就去问了师匠: Normal flow is the way that elements are displayed in a web page in most circumstances. All elements in HTML are inside boxes which are e

CSS基础之清除浮动

CSS基础之清除浮动 本人前端菜鸟一枚,在学习 CSS 过程中发现网上流传的教程参差不齐,要么内容不够详细,要么方法就是错的.本文是在我参考了许多前辈经验的基础上编写的,如有错误的地方,请各位大牛不吝赐教.以下是我总结的三种行之有效而且比较简单实用的方法. 一.父级div定义伪类 :after 代码如下: <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8&

关于浮动与清除浮动,你应该知道的

我在做页面布局的时候,多多少少总会受到来自浮动的困扰,因此专门通过实践来总结一下浮动与清除浮动. 首先总结几个基础的概念: 浮动:设置浮动的元素会脱离文档流,不会影响块元素的布局,但是会影响内联元素的排列[通常是文本]: 文档流:在文档流中,块元素会单个元素独占一行 接下来我们通过实际演示来看看关于浮动的那些事儿. 下面是5个div块元素在文档流中一次排列 我们知道浮动元素有几个规律 如果浮动元素的上一个元素也是浮动,那么该元素会与上一个元素排列在同一行,如果行宽不够,后面的元素会被挤到下一行

css中元素的浮动和清除浮动的影响

用float属性可以使元素浮动到包含框内的左右边使文本围绕它,这里创建一个包含框内有段落和一个小的div并被包围: <html> <head> <title><title> <style type="text/css"> div{ border:1px solid red; width:200px; height:200px; } .div1{ background-color:yellow; float:right; wid

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

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