EDM排版table设置padding在ie7下bug
今天搞EDM发现一个在ie7下很扯淡的bug,由于以前没遇到过,所以花了点时间来解决下。
IE7下bug重现:
<table cellpadding="0" cellspacing="0" border="0" bgcolor="#ffffff" width="700" style="padding:20px;margin:0 auto;border:1px solid #000000;">
<tbody>
<tr>
<td style="background:#3A87AD;padding:10px 0;color:#ffffff;">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tbody>
<tr>
<td>内容</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
我们用ie7浏览器查看,会发现,有蓝色背景的内容变宽了,如下图(上面的是现代浏览器效果,下面的是ie7效果):

经过一些调试,发现是 table 上设置了 padding,而属于这个 table 的 td 也设置了padding 导致的 bug。
以上例子,就是因为 第1行的 table 设置了 padding,而第4行的 td 也设置了 padding 。
我们对以上例子做一下修改,我们保留第1行 table上的padding ,把第4行的td的padding复合属性分开写(padding-top:10px;padding-bottom:10px;),如:
<table cellpadding="0" cellspacing="0" border="0" bgcolor="#ffffff" width="700" style="padding:20px;margin:0 auto;border:1px solid #000000;">
<tbody>
<tr>
<td style="background:#3A87AD;padding-top:10px;padding-bottom:10px;color:#ffffff;">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tbody>
<tr>
<td>内容</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
然后在 IE7 下面预览,发现和现代浏览器显示效果一样。
EDM排版table设置padding在ie7下bug的更多相关文章
- 【css】a:hover 设置上下边框在 ie6 和 ie7 下失效
前段时间在写样式的时候发现了这个问题,虽然当时就解决了这个 bug 不过还是记录下,以免再次出现这样的问题. demo 代码: <!doctype html> <html lang= ...
- ie6,ie7下设置overflow:auto下滚动条不起作用
今天遇到一个比较特殊的情况:ie6,ie7下设置overflow:auto下滚动条出来了但是滚动条不起任何作用,但在火狐,ie8,ie9,谷歌等浏览器下正常显示,解决方案:只需要加一个position ...
- ie7下设置z-index无效如何解决?
ie7下z-index无效的问题之前做练习的时候遇到过,百度解决掉之后就丢脑后了.今天项目中又发现这个bug,无奈又去百度,这次还是记下来,节省了百度的时间还能小装一把... 需求是这样的: 页面中的 ...
- css padding在ie7、ie6、firefox中的兼容问题
padding 简写属性在一个声明中设置所有内边距属性. 说明这个简写属性设置元素所有内边距的宽度,或者设置各边上内边距的宽度.行内非替换元素上设置的内边距不会影响行高计算:因此,如果一个元素既有内边 ...
- 【css】ie6 和 ie7 下 position 与 overflow 的问题
前几天做的项目中碰到这样一个问题,在 ie6 和 ie7 下,给父元素设置 overflow:hidden 不起作用无法隐藏,后来发现是子元素中有设置 position:relative,如果子元素删 ...
- IE6/IE7下margin-bottom失效兼容解决办法及双倍边距问题
(从已经死了一次又一次终于挂掉的百度空间人工抢救出来的,发表日期 2014-04-08) 一.IE6/IE7下margin-bottom失效兼容解决办法 1.用padding-bottom代替:2.在 ...
- IE下设置body{overflow:hidden;}失效Bug
问题重现: <p>There are no scrollbars on this page in sane browsers</p> html, body, p { margi ...
- vertical-align及IE7下的inline-block
在IE7下,是不支持inline-block元素的,当对块级元素如dl进行inline-block样式设置时,在IE7浏览器是下样式是不会生效的. 若要在IE7下实现将块级元素设置为内联元素,可以这样 ...
- IE6,IE7上设置body{overflow:hidden;}失效Bug
IE6,IE7下设置body{overflow:hidden;}失效Bug 最近做项目发现在IE7下设置body{overflow:hidden;}后还是会出现纵向滚动条,所以上网查查了,在这里记录一 ...
随机推荐
- 用PHP生成随机数的函数
转自:http://www.jbxue.com/article/5034.html 介绍:在早期的php中生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生 ...
- PHP中CURL技术模拟登陆抓取网站信息,用与微信公众平台成绩查询
伴随微信的红火,微信公众平台成为许多开发者的下一个目标.笔者本身对于这种新鲜事物没有如此多的吸引力.但是最近有朋友帮忙开发微信公众平台中一个成绩查询的功能.于是便在空余时间研究了一番. 主要的实现步骤 ...
- 自从用了Less 编写css,你比以前更快了~(sublime编译)
之所以用这个标题呢,主要是最近调侃杰伦太有意思了. 好吧,开个玩笑而已. 如果你了解过Less,并对之很熟悉,就不用往下看了. 如果你没用过,恭喜,这是一个入门级的教程,学会了它,可以为你节省10%的 ...
- Dapper.ColumnMapper 的使用
using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; usin ...
- vb6-很简单的配置密码验证提示
'很简单的配置密码验证提示 Dim add As String add = Trim(InputBox("请输入配置密码", "报表配置")) If add = ...
- Android 管理Activity中的fragments
为了管理Activity中的fragments,需要使用FragmentManager,为了得到它,需要调用Activity中的getFragmentManager()方法,接下来详细介绍,感兴趣的朋 ...
- 子查询优化成join关联查询时要注意一对多关系
mysql> select * from t where t.id in (select t1.tid from t1); +------+ | id | +------+ | +------+ ...
- Mac OS X 10.10 Yosemite PHP 5.5.14 free type support fix
通过将php将至5.4来勉强支持freetype扩展,不推荐此方法 after upgrading to new Mac OS X Yosemite, i noticed that free type ...
- UIImageView加抖动效果(转)
CGAffineTransform moveRight = CGAffineTransformTranslate(CGAffineTransformIdentity, 20, 0); CGAffine ...
- 【BZOJ 1040】 [ZJOI2008]骑士
Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火 ...