本文和大家重点讨论一下CSS display:inline和float:left两者的区别,CSS display是指显示状态,inline表示内联,特点是紧贴着前一个内联元素,通常默认的内联元素有span,a,em,strong等。而float表示的是浮动,float:left,是针对块级元素的浮动形式,是不同形式的两种状态。
CSS display:inline和float:left两者的区别
CSS display是指显示状态,inline表示内联,特点是紧贴着前一个内联元素,通常默认的内联元素有span,a,em,strong等。而float表示的是浮动,float:left,是针对块级元素的浮动形式,是不同形式的两种状态。
首先我们要明确,CSS display:inline;与float:left;正确含义。CSS display:inline;(内联)《CSS权威指南》中文字显示:任何不是块级元素的可见元素都是内联元素。其表现的特性是“行布局”形式,这里的“行布局”的意思就是说其表现形式始终以行进行显示。比如,我们设定一个内联元素border-bottom:1pxsolid#000;时其表现是以每行进行重复,每一行下方都会有一条黑色的细线。如果是块级元素那么所显示的的黑线只会在块的下方出现。
当然这看起来不像是CSS display:inline;与float:left;的区别所在,但是当理解了float:left;的特性那么我们就清楚到底是怎么回事了。float:left;(左浮动)他使得指定元素脱离普通的文档流而产生的特别的布局特性。并且FLOAT必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或者换句话来说当应用了FLOAT那么这个元素将被指定为块级元素。
那么我们很清楚了,内联(CSS display:inline;)元素不能设置宽高,因为内联属于行布局,其特性是在一行里进行布局,所以不能被设定宽高。
运行代码:
- content="text/html;charset=gb2312"/>
float&inline - *{text-align:center;padding:4px;}
- div,p{text-align:left;}
- span{background:#f5f5f5;border-left:1px#eeesolid;
- border-top:1px#eeesolid;border-right:1px#cccsolid;
- border-bottom:1px#cccsolid;}
- ul#inlineli{display:inline;list-style:none;
- border-left:1px#cccsolid;width:300px;background:#f5f5f5;;}
- ul#floatli{float:left;display:inline;list-style:none;
- border-left:1px#666solid;width:300px;background:#f5f5f5;}
- span为内联/inline元素,给他宽度赋值是没有效果的。
span为内联/inline元素, - 给他宽度赋值100px+float:right;可以看到有了宽度。
这个li被定义为内联/inline,设置宽度没有效果
- test
- test
这个li被定义为内联/inline+float:left,设置宽度有效果
- test
- test
本文标题:CSSdisplay:inline和float:left两者区别
浏览路径:http://www.shufengxianlan.com/qtweb/news27/322127.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联