网络编程
位置:首页>> 网络编程>> 网页设计>> block 和 inline 的区别是?(2)

block 和 inline 的区别是?(2)

作者:棕熊 来源:棕熊@Think Fast 发布时间:2009-12-08 13:00:00 

标签:block,inline,区别,css

- Block Box VS Inline Box

大家应该对CSS的盒式模型有些了解了吧。网页上内容的布局,都是靠controlling box来实现的。

在CSS2.1的规范里,Controlling box 分三类——block box, inline box, 和至今都没怎么被广泛支持的run-in box。这就是规范中第二处提到block 和inline 的地方。网页上的内容,不论是不是有标签包围,或者设定了何种显示方式,最终都会被计算成一个 controlling box,并应用布局规则。

好在这个过程对于前端开发来说是透明的,大家可以不用去考虑,而只要考虑这两种盒的区别就行了

  • 在普通布局中,block box 是从上至下,一个隔一个的布局的;inline box 则是从左至右(也可能因为设置了direction而从右到左,或者从上到下)首尾相接,不间断的布局的。

  • inline box 不响应垂直margin, width, height, max/min width/height 等属性声明;block box 则可以响应这些属性。

常用的基本上就这样了。

- display: block VS display: inline

最后一个有提到block 和inline 的地方就是这里了。和其他两个地方不同,block 和inline 并不是display 这个属性的唯一取值。CSS2.1规范中,display 属性的取值可以为以下的任何一个:inline, block, list-item, run-in, inline-block, table, inline-table, table-row-group, table-header-group, table-footer-group, table-row, table-column-group, table-column, table-cell, table-caption, none, inherit。

在通常情况下,display: block 能让元素生成一个block box, 而display: inline 会生成inline box。至于两者的区别请见上一节

- 最后大家有兴趣的话

可以思考一下LI 元素到底是block level 还是inline 的哟~

那么,就到这里吧,大家下次见说

结果请看:block 和 inline 答案揭晓~ 另付一则,关于 word-break

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com