澄清display:inline;与float:left;的用途

这样的题目显得有点可笑,但是鉴于很多网友在标准学习的过程中常被这样的问题所困扰(例一例二),所以特此专文澄清两者之间的区别与特性。

首先我们要明确,display:inline;与float:left;正确含义。display:inline;(内联)《CSS权威指南》中文字显示:任何不是块级元素的可见元素都是内联元素。其表现的特性是“行布局”形式,这里的“行布局”的意思就是说其表现形式始终以行进行显示。比如,我们设定一个内联元素border-bottom:1px solid #000;时其表现是以每行进行重复,每一行下方都会有一条黑色的细线。如果是块级元素那么所显示的的黑线只会在块的下方出现。

当然这看起来不像是display:inline;与float:left;的区别所在,但是当理解了float:left;的特性那么我们就清楚到底是怎么回事了。float:left;(左浮动)他使得指定元素脱离普通的文档流而产生的特别的布局特性。并且FLOAT必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或者换句话来说当应用了FLOAT那么这个元素将被指定为块级元素。

那么我们很清楚了,内联(display:inline;)元素不能设置宽高,因为内联属于行布局,其特性是在一行里进行布局,所以不能被设定宽高。
出处:毅博客

坐断江南 笑煞之!!
posted @ 2007-12-19 23:34 坐断东南 笑煞之!! 阅读(310) 评论(2)  编辑 收藏 所属分类: web标准

  回复  引用  查看    
#1楼 2008-04-22 10:14 | PerfectDesign      
那这样说一个被指定了inline的div再指定height就不起作用了是吗?

  回复  引用  查看    
#2楼 2008-04-22 10:22 | PerfectDesign      
果然!谢谢!

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
 
另存  打印