用什么代替html5中不再支持table的cellspacing和cellpadding属性?
如果你现在开始用html5的声明来写页面时,你会发现在定义table的cellspacing和cellpadding时被提示该属性已过时或者提示非法属性。具体原因是在html5中table标签的这两个属性已经被移除,需要定义边框之类的时应该使用css的写法
具体实现如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Html5 Table Test</title>
<style type="text/css">
table{ border-collapse:collapse; border:solid 1px Black; }
table td{ width:50px; height:20px; border:solid 1px Black; padding:5px;}
</style>
</head>
<body>
<table>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
</body>
</html>
效果图如下:
代码的关键点在于border-collapse:collapse; 和 border:solid 1px Black;。对于padding的定义大家都比较熟悉了,这里主要讲一下的是border-collapse中的collapse和separate值,定义为collapse时,他们的边框会重叠在一起,定义为separate时单元格边框之间会有间隙。不定义时默认为separate。 separate情况下的效果图如下:
代码定义很简单,也是早版本浏览器就支持的东西,只是以前我们一些人习惯用cellspacing和cellpadding来定义,但这两个属性在html5中将要移除,所以需要改过来用css来定义而已。