当前位置:首页 > 网页设计 >CSS >

div与table标签中border属性的差别

发布时间:2015-11-21 10:39:43 作者:佚名 阅读:(338)


今天在页面布局时遇到了个问题:div布局的总是比table的多两个像素,用火狐的查看元素可以清楚地看到用div的多出了两个像素,因为设定了border:#cbcdca solid 1px;把border宽度设置为0则可以了,把border-left设置0则可以看到只多出1px了。而table的则不会超出宽度。

现象分析清楚了,原因就很容易理解了,div布局的border属性属于外加的,会在原来宽度基础上加上边框的宽度,而table的border属性属于内置的,会在原来宽度范围内显示--内容区域相应减少边框的宽度。由于有些地方的布局需要用到父容器的宽度--即设值为100%等百分比的形式,这个时候就无法在规定宽度范围内减去边框的宽度了,所以这个时候用div对多出的边框宽度非常头痛,用表格则可以完美解决。但table内容都放到td里面,比div多了几个层次,代码看起来不太美观,另外对应内容多的区域需要整个table加载完才能显示,效果没有div的好。

如果全部都加2px 不影响页面效果的话用div是比较好的方法,如果对多出的2px像素很敏感则用table比较实际了,原因找到了,具体情况就具体分析吧!
 

欢迎分享转载→ div与table标签中border属性的差别

© 2015-2021 - 吾爱编程网 版权所有 苏ICP备18033726号-1关于我们 - 网站声明 - 联系我们