IE6/7中使用setAttribute设置table的cellpadding和cellspacing的Bug

新版邮箱项目中做页签功能时碰到的。

 

table元素的 cellpadding cellspacing 属性意义不提了。它们也有对应的css解决方案。如下

table {
	border-collapse:collapse;
	border-spacing:0;
}
th,td {
	padding: 0;
}
 

JS操作这两个属性有两种方式,

 

方式1,

table.cellSpacing = 10;
table.cellPadding = 10;

 
注意cellSpacing和cellPadding中间的 S P 都要是大写的。

 

方式2,setAttribute

table.setAttribute('cellspacing','10');
table.setAttribute('cellpadding','10');

 
注意这里的 s p 都没有大写。

方式2在IE6,7中将不起作用。见附件测试html。需注意。

改成大写后又都可以了

table.setAttribute('cellSpacing','10');
table.setAttribute('cellPadding','10');


此外,IE开发者工具对于以上两种方式的解析也不同。

table.setAttribute('cellspacing','10')
IE6/7 IE6/7中使用setAttribute设置table的cellpadding和cellspacing的Bug
IE8/9 IE6/7中使用setAttribute设置table的cellpadding和cellspacing的Bug

 

 

另见:使用滤镜设置透明导致 IE 6/7/8/9  解析异常

你可能感兴趣的:(html,css,IE)