请选择 进入手机版 | 继续访问电脑版
收藏本站腾讯微博新浪微博
点点网模板设计大赛 phpchina

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 给官方提建议

论坛活动及任务 归纳网站最新活动 地图任务 邮件更新任务:保护帐号安全

积分换实物,来参加蓝色理想积分兑换吧! 联系招聘客服 蓝色理想帮你找工作! 万元奖励等你拿——点点网模板设计大赛

查看: 10117|回复: 6

[求助] table对padding和margin的解释应该是怎么一回事的? [复制链接]

yuanshi 楼主

原始

银牌会员 手机认证 

帖子
1906
体力
1660
威望
3
居住地
广东省 广州市
发表于 2006-4-13 22:46:00 |显示全部楼层
先看一下这个例子先

 提示:您可以先修改部分代码再运行



在这个例子中没有给table设置相关属性;IE下和FF下无异。

 提示:您可以先修改部分代码再运行



在这个例子中给他加上了一个属性
  1. table{padding:50px;}
复制代码

ie下没有变化,ff下符合要求的变化了;


 提示:您可以先修改部分代码再运行



在这个例子中给他加上了一个属性
  1. table{margin:50px;}
复制代码

ie下变化了,FF下也按要求变化了。
但在ie的效果中,没有办法显示父元素的背景颜色。

现在的问题是:在ie下table是如何解释padding,和margin这两个元素的呢??






西部数码顶级域名注册商39元抢注!
old9 
帖子
653
体力
1762
威望
88
居住地
安徽省 合肥市
发表于 2006-4-14 06:24:00 |显示全部楼层
padding:
IE不支持padding

margin:
table 的上下 magin 和 div 的 magin 重叠了,以至于伸出 div 的 margin 之外。
具体参考 CSS 规范中关于 margin collapsing 的部分,或者用这个关键字google一下也应该能找到很多相关内容。
按照规范而言,table 以及很多其他的 box 是不应该出现 margin collapsing 的,但 IE 的 border collapsing 是按照自己的一套规则处理的,这里就体现在它对 table 依然作了处理。
解决方法是给外围的 div 添加 layout,添加 layout 的方法有很多,比如赋予宽高,position:absolute,float,zoom等等。
关于 layout 的详细内容可以参考我最近翻译的一篇文章
http://old9.blogsome.com 已被 GFW 封锁
租服务器,上51IDC | [长沙]招聘:PHP经理10K/WEB前端6K/PHP开发6K

使用道具 举报

boyr 
帖子
56
体力
116
威望
0
发表于 2009-7-4 18:41:00 |显示全部楼层
去掉*{
margin:0;
padding:0;
}
就没问题了。
进一步发现只要不是tr或者td{
margin:0;
padding:0;
}
就没问题了,谁能解释一下呢?

[ 本帖最后由 boyr 于 2009-7-4 18:46 编辑 ]

使用道具 举报

boyr 
帖子
56
体力
116
威望
0
发表于 2009-7-4 18:50:34 |显示全部楼层
好像明白了,原来table的padding不是指整体的表格范围,而是指所有包含在内的tr和td的padding。也就是说padding在IE下有继承性。

使用道具 举报

boyr 
帖子
56
体力
116
威望
0
发表于 2009-7-4 19:08:07 |显示全部楼层
其实这样解释更合理,就是:
IE只有td有padding属性,如果设置table,tr的padding,IE就取巧的设置所包含的td的padding。
如果已经设定td的padding为零,那么设置table,tr就不起作用了。
不知道IE8怎么样了。

使用道具 举报

帖子
145
体力
644
威望
0
居住地
福建省 厦门市
发表于 2009-7-28 16:40:13 |显示全部楼层
用了padding和margin 还有必要用table吗?

不过可以研究下,呵呵

使用道具 举报

sasumi 
帖子
120
体力
887
威望
0
居住地
广东省 深圳市
发表于 2009-8-7 09:28:47 |显示全部楼层
table 不是 box模型。一些属性与常见的标记是不一样的。包括里面的内部元素 tr td caption tbody tfoot th col colgroup等。

所以这些东西如果设置了但模型的 margin 或者 padding,就很可能 出现奇形怪状的结果了。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-2-13 10:55 , Processed in 0.093825 second(s), 8 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部