才子小窝

天生我才必有用,千金散尽还复来

« 纯CSS解决未知高宽的图片实现垂直居中DIV+CSS布局的几点建议 »

DIV+CSS布局中p元素引起的问题

今天有个网友问我,他的一个页面布局有点问题,没有按照CSS的定义来渲染,才子看了一下他的CSS文件,没发现哪里有错误,结果一看XHTML,发现一个才子以前犯过的一个错误,在这里才子解释一下,希望帮到一些新手!

这个网友,他的布局其实还算正规,虽然没有用到一些高级技巧来兼容各浏览器之间的差异,但还算中规中矩,只有一个地方有问题,那就是在主内容模块(#main)里,它用到了一个p元素(段落标签)来做子容器,其实这并没有什么问题,但p元素里面他又用到了好几个块元素(block element),用到了h2和h3标题标签,还有div元素,导致这个p元素在CSS中定义的内边距失效,他以为是块元素浮动(float)的问题,结果用clear: both;清除浮动还是没用,p元素定义的padding: 10px;没有生效。
才子告诉他原因了,p元素是个比较特殊的块元素,它与我们常用来布局的div元素不同,p元素它只能装内联元素(inline element),而div元素可以装任何元素,这估计也是为什么推荐采用div+css布局的原因之一吧。

以上的这个问题才子在这里分享出来,希望新手们要注意了,采用div+css布局就尽量全部用div来排版,p标签只是一个段落标签,要用也只用来当作一段文字的容器,请不要使用它来参与布局。

风流才子 作品,转帖请保留原文地址链接,谢谢合作!
才子小窝http://www.54caizi.org

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新评论及回复

最近发表


Copyright 2008-? 才子小窝. Some Rights Reserved. 
粤ICP备08040021号  网站地图