CSS里面的浮动属性是布局的常用工具,只有真正了解它并熟练使用才能将它的优点发挥到极致。

许多页面中都有文字绕图效果,并且各区块分布得错落有置,很多朋友在自学CSS布局时为了做出这些效果往往会被div只能独占一行的默认样式搞的头大,但使用了浮动属性,布局就变得简单、美观了。

任何元素都可以被浮动,段落标签<p>、<div>、<table&gt;、<img>,甚至<span>、<b>、<h1>等等都可以,而且所有被定义为浮动的元素都会被自动变为“块状元素”,也就是我们先前讲过的“盒装模型”,也就是代表它可以定义宽度和高度了。

浮动float的定义方法

CSS中浮动属性的定义是通过float来声明的,它规定了元素是向左靠还是向右靠,有三个值:

  • left:居左;
  • right:居右;
  • none:默认属性,不浮动。

下面我们举个例子:

<div style="float:right;width:100px;height:100px;">

<p style="float:right;width:50px;background:#F00;">文字</p>

</div>

上面的例子将最外面的div置于右方,将内部的段落也置于div内部右方,就这样做到了内容的浮动。

水平浮动的层叠

如果将A元素居左放置在页面最左端,在它的后面跟随一个居左浮动的B元素,那么B元素就是贴着A元素排列的,以此类推,在水平宽度允许的条件下,可以放置多个居左浮动的元素,直到宽度没有多余的空间时,居左浮动的元素会绕到下一行的左侧显示。

举例:

html代码如下:

<ul>

<li>float01</li>

<li>float02</li>

<li>float03</li>

<li>float04</li>

<li>float05</li>

<li>float06</li>

<li>float07</li>

<li>float08</li>

</ul>

CSS代码:

ul {

width:500px;

background:#000;

padding:5px;

}

li {

float:left;

border-right:1px solid #000;

height:20px;

padding-right:100px;

background:#FFF;

margin-bottom:1px;

}

  以上代码的显示效果应该是一排水平排列的<li>,在超出宽度时,会折行显示,为了分清界限,我给它定义了一条右边线。

这种思路就是布局、列表排列的雏形。

清除属性-clear

  吃了毒药,就一定要有解药。学会了怎样使用浮动属性,那必须学会怎样清除浮动。

  清除属性通过clear来声明,它同样有四个值:

  • clear:left;清除左侧。
  • clear:right;清除右侧。
  • clear:both;清除两侧。
  • clear:none;不清除。

clear要达到的效果是,一个被清理的盒状元素无法与前置浮动保持在同一个水平位置上。它必须出现在其下方。

举例说明一下:

<div style="float:left; background:#F00;">顶部第一个div向左浮动,无清除效果</div>

<div style="clear:right;">第二个div清除右侧内容</div>

<div style="float:left;">第三个div,无清除效果,居左浮动</div>

<div style="float:left;">第四个div,无清除效果,居左浮动</div>

  看看上面这个例子,也许你会明白一点,如果想让第二个div单独处于一行,只要把clear的属性值改为both即可。

一般情况下,清除功能可以达到预想效果,但是有时会出现些小的错误,这通常是浏览器的差别造成的,以后我会教大家如何弥补这些小错误。

分享:

 

0

喜欢

0

赠金笔

 
阅读(561)┊ 评论 (0)┊ 收藏(0) ┊转载(0) ┊ 喜欢 ┊打印举报
已投稿到:
 
前一篇:2011年09月03日

css中的float属性以及清除方法 (2011-09-03 17:36:26)的更多相关文章

  1. CSS基础(float属性与清除浮动)

    3.8 这是CSS里比较重要的属性:浮动,这个属性会在以后经常用到,算是一个重点吧 浮动 语法:float:left  |  right  |  none 特点: 浮动的元素不占位置,脱离了标准文档流 ...

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

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

  3. 深入理解css中的margin属性

    深入理解css中的margin属性 之前我一直认为margin属性是一个非常简单的属性,但是最近做项目时遇到了一些问题,才发现margin属性还是有一些“坑”的,下面我会介绍margin的基本知识以及 ...

  4. 理解与应用css中的display属性

    理解与应用css中的display属性 display属性是我们在前端开发中常常使用的一个属性,其中,最常见的有: none block inline inline-block inherit 下面, ...

  5. CSS中的display属性(none,block,inline,inline-block,inherit)

    css中的display属性(none,block,inline,inline-block,inherit) display属性是我们在前端开发中常常使用的一个属性,其中,最常见的有: none bl ...

  6. CSS中隐藏内容的3种方法

    CSS中隐藏内容的3种方法 一般有:隐藏文本/图片.隐藏链接.隐藏超出范围的内容.隐藏弹出层.隐藏滚动条.清除错位和浮动等. 1.使用display:none来隐藏所有内容 display:none可 ...

  7. C++:调整基类成员在派生类中的访问属性的其他方法(同名成员和访问声明)

    4.3 调整基类成员在派生类中的访问属性的其他方法 4.3.1 同名函数 在定义派生类的时候,C++语言允许在派生类中说明的成员与基类中的成员名字相同,也就是 说,派生类可以重新说明与基类成员同名的成 ...

  8. CSS中的!important属性用法

    关于CSS的运用技巧有很多, 今天主要探讨一下CSS中 !important 这个属性的用法.在CSS的使用中,遇到最多的问题就是不同浏览器之间的兼容问题. 由于IE并不严格执行W3C标准, 而又几乎 ...

  9. 关于CSS中的float可能出现的小问题

    关于CSS中的float可能出现的小问题 前言:最近学习CSS的float所遇到点小问题,然后顺便分享给大家. 一.什么是CSS以及float (一) CSS概述 CSS是层叠样式表(英文全称:Cas ...

随机推荐

  1. 关于git 命令的一些事

    克隆代码命令 http://www.yiibai.com/git/git_clone.html 关键:得实现新建本地仓库文件夹 ==> git clone 远程网址 git 上传主要代码:htt ...

  2. 原生js获取元素的子元素

    //使用firstChild //但是下面这种因为有空格,也算其子元素 <lable> <span id="onlinePerson" name="pe ...

  3. Oracle DBLINk的使用

    Oracle中自带了DBLink功能,它的作用是将多个oracle数据库逻辑上看成一个数据库,也就是说在一个数据库中可以操作另一个数据库中的对象,例如我们新建了一个数据database1,我们需要操作 ...

  4. pop

    package com.example.hellopopupwindow; import android.os.Bundle; import android.app.Activity; import ...

  5. IMAGE WATCH工具安装与学习

    1.下载安装 从下载地址搜索IMAGE WATCH,即可下载自己所需要的IMAGE WATCH工具. 安装ImageWatch,双击ImageWatch.vsix进行安装即可: 2.使用示例 这里首先 ...

  6. django扩展User认证系统

    第一种方法proxy 如果你对Django提供的字段,以及验证的方法都比较满意,没有什么需要改的.但是只是需要在他原有的基础之上增加一些操作的方法.那么建议使用这种方式.示例代码如下: #在model ...

  7. 【LOJ6036】 「雅礼集训 2017 Day4」编码

    传送门 LOJ Solution 因为?只有两种可能为0,1,所以就把这两个串搞出来. 那么现在?取0和?取1不能并存,前缀不能并存,所以就是一个\(2-SAT\),现在问题在于这个东西可能会有很多条 ...

  8. Python 绝技 —— UDP 服务器与客户端

    i春秋作家:wasrehpic 0x00 前言 在上一篇文章「Python 绝技 —— TCP 服务器与客户端」中,介绍了传输层的核心协议 TCP ,并运用 Python 脚本的 socket 模块演 ...

  9. 1.viewpager

    ViewPager是android扩展包v4包中的类,这个类可以让用户左右切换当前的view. ViewPager类直接继承了ViewGroup类,所以它是一个容器类,可以在其中添加其他的view类. ...

  10. 第十九节:Java基本数据类型,循环结构与分支循环

    基本数据类型 Java中的基本数据类型,有8种,在Java中有四种类型,8种基本数据类型. 字节 boolean 布尔型为1/8 byte 字节类型为1 short 短整型为2 char 字符型为2 ...