display:inline这个该咋用呢?还有和flaot:left的应用
今天碰到一个问题,关于display的,不会用,就在网上查了一遍,摘录了点文章放这里你看我看大家看。
发现我以前犯了一个毛病,而且有的严重,关于列表的,本来,用列表做网站的menu的话,要做成横向排列的话,我总是用float再加上宽度,但是鉴于float用多了经常出问题,所以能避免最好还是避免。今天找到了替代的办法就是加上li{display:inline;},li这个标签就成了内联的元素了,就可以在一行了,应该是不错的,有时间的话可以尝试下。目前还不知道这个支持的浏览器,是不是所有的都支持,希望是支持吧,因为display:block;好像都支持的。
以下文章引用自网络:
首先我们要明确,display:inline;和float:left;正确含义。display:inline;(内联)《CSS权威指南》中文字显示:任何不是块级元素的可见元素都是内联元素。其表现的特性是“行布局”形式,这里的“行布局”的意思就是说其表现形式始终以行进行显示。比如,我们设定一个内联元素border-bottom:1px solid #000;时其表现是以每行进行重复,每一行下方都会有一条黑色的细线。假如是块级元素那么所显示的的黑线只会在块的下方出现。
当然这看起来不像是display:inline;和float:left;的区别所在,但是当理解了float:left;的特性那么我们就清楚到底是怎么回事了。float:left;(左浮动)他使得指定元素脱离普通的文档流而产生的特别的布局特性。并且FLOAT必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或换句话来说当应用了FLOAT那么这个元素将被指定为块级元素。
那么我们很清楚了,内联(display:inline;)元素不能配置宽高,因为内联属于行布局,其特性是在一行里进行布局,所以不能被设定宽高。
