首页 > 学习笔记 > CSS学习笔记:Float属性的使用

CSS学习笔记:Float属性的使用

2008年7月21日

Float属性是CSS布局中常用的一个属性,用于控制对象的布局方式,大部分的div布局基本上都是通过float的控制来实现布局。

float用于设置对象是否浮动显示,以及设置具体的浮动方式。有三个值:

float:none
表示对象不浮动。

float:left
对象将向左浮动,右侧的内容将流到当前对象的右侧

float:right
对象将向左浮动,左侧的内容将流到当前对象的左侧

left和right属性的意思,通俗的讲,就是当前这个“块”漂在当前行的左侧或右侧(相对其它内容)。

学习float的过程中,发现最大的一个用处,就是将所有的div块的float设置为left,再设置精确的宽度(width),可以在网页上使“对象”们依次排列,一行满了,后面的对象又将换行显示。实现这个的核心技术在与对宽度的合理控制。所以对这些div对象的宽度计算上要非常精确,值得一提的是,计算宽度要把对象的border值计算在内。

以我投放adsense代码时写的简单css布局为例,这是一个float简单的例子。

实现效果如下图:

adsense-float

模板该部分代码如下:

<div id="adright">此处是adsense 250*250 广告代码</div>

css设计是:

#adleft{
width:295px;
height:250px;
float:left;
}
#adright{
width:250px;
height:250px;
float:left;
}

related_post这个id的css略去。

我们可以看到,adleft和adright的float属性都是left,这两个对象会依次从左往右依次排列。由于两个对象的width分别为295px和250px,295+250=545,而嵌套它们的外部容器content正好为549px,所以后面的内容将会从另一行开始显示。

另外我还有一个疑问:
一个没有对象的div,即:

<div>内容</div>

能不能使接下去的对象另起一行再显示,而不是紧接在这个空div里面最后一个对象的后面?

学习笔记 ,

  1. 2008年7月21日22:58 | #1

    马上就记录下来了嘛,不错

  2. 2008年7月22日12:44 | #2

    哈哈,一般般…

  3. 2008年7月22日14:29 | #3

    刚看到你的留言,过来踩一下,看到你也研究CSS,请教两个这几天一直困扰我的问题=&=,我是刚从百度空间搬到WordPress 的,对于这个程序还不是很了解的。1:你去我的博客的时候可以看到的,我在文章之图片都是左对齐的,但不知道什么回事图片的右边与文字之间的距离很小,而图片的下边与文字之间的距离却没有这种情况的,这样总感觉有点不美观的,请教。。。。2:我看你博客下边有一个翻页的插件的,能显示1,2,3,4,5的页面,我用的是yo2的系统,他好像没有这个插件的,也好想没办法上传插件的(能不能上传插件我不太清楚)。我怎么才能实现你那样的效果。。。

  4. 2008年7月22日20:13 | #4

    1.你使用的这款主题其实已分别定义了图片居中、居右、居左的margin.在写日志时,你不要直接后台可视化编辑器里图片的居左、居右、居中选项,而是在源码编辑器里将img添加一个属性,居左添加class=“alignleft”,居右添加class=“alignright”,居中添加 class=“centered”。

    如果你嫌这个麻烦,直接在css文件中添加这句:
    .entry img{padding:2px 10px 2px 10px;}

    优博网先要经模板设为私有才可以编辑。

    2.我是使用WP-PageNavi插件,yo2没有这个插件,但yo2有Pagebar2这个分页插件,也可以实现这种效果,不过需要在模板中写代码调用改插件。yo2的插件没法上传,不过你可以去向他们推荐某个插件,他们会加上去的。

  5. 2008年7月22日20:42 | #5

    爱死你了,谢谢,第一个问题已经解决。第二个关于翻页插件的那个我正自己先研究一下,要是还不明白再来请教呵呵

  6. 2008年7月22日21:23 | #6

    别爱我….我不想断背…

  7. 2008年7月28日09:40 | #7

    adsense放在那里点击率应该不高吧?

  8. 2008年7月28日10:01 | #8

    基本没人点,哎。

  9. 2008年7月29日09:25 | #9

    好学的孩子。

  10. 2008年7月29日09:34 | #10

    一般般~~

  11. 2008年7月29日14:49 | #11

    请教一下,我想把我博客的友情链接分成两栏,具体的CSS代码怎么写??自己写了两次都没有成功啊~~
    我是使用Widget来插入侧栏的。

  12. 2008年7月29日18:56 | #12

    #divLinkage ul li{
    float:left;
    width:80px;
    }

    我在firebug测试是行的,感觉float实在太强大了~

  13. 2008年7月29日19:04 | #13

    晕~看错博客了~不好意思~我再看看

  14. 2008年7月29日20:37 | #14

    两个宽度都是自适自适应的,不会搞…

  15. 2008年8月6日17:02 | #15

    float:left
    对象将向左浮动,右侧的内容将流到当前对象的右侧。

    float:right
    对象将向左浮动,左侧的内容将流到当前对象的左侧。

    这一段还是有一些错误的.

  16. 2008年8月6日18:30 | #16

    请教~~我是新手。。

  17. 2008年8月7日10:03 | #17

    不是…我的意思是说你把左右写错了…这样对浏览的新手很不利.

  18. 2008年8月7日21:43 | #18

    当时没仔细斟酌,我杠掉先。

  1. 目前还没有任何 trackbacks 和 pingbacks.