表格的 cellspacing 和 cellpadding 我们经常会用如下的方式来清除默认样式:

<table cellspacing="0" cellpadding="0"></table>

很多朋友会说表现在结构中,这样不符合标准,那如何将这个表现拿出来,有些朋友或许很迷惑。我们可以用 table 的 border-collapse: collapse; 属性 来代替cellspacing=”0″,用 th,td 的 padding: 0; 属性来代替 cellpadding=”0″。

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

还可以用 expression 来实现 cellpadding=”0″ 的样式:

table {
	border-collapse:collapse;
	border-spacing:0;
	padd:expression(this.cellPadding=0);
}

下面我们看下《HTML与CSS入门经典(第7版)》一书中对这两个属性的描述:

对表格的设置不仅可以使用style属性。例如,可用 cellpadding 和 cellspacing 属性来控制表格边框的间距。cellspacing 属性设置表格边框之间和表格单元格之间的间距(以像素为单位);cellpadding 属性设置单元格中的信息四周的间距(也是以像素为单位)。如果将 cellpadding 属性设置为 0,将使表格中的所有信息尽量接近表格边框,甚至接触到边框。cellpadding 和 cellspacing 属性让你能够全面控制表格的外观。

注意:虽然在 XHTML 中仍允许使用 cellpadding 和 cellspacing 属性,但 CSS 中存在与这两个属性等价的样式属性 padding 和 border-spacing。然而,当前的网页浏览器对这些样式属性的支持不一致,因此建议现在仍使用属性 cellpadding 和 cellspacing 来调整表格的间距。

而《精通 CSS》一书中,作者提倡的方法是:

table {
	border-collapse: collapse;
}
<table cellpadding="0"></table>

至于到底用哪种方法好,朋友们自己斟酌考虑决定。

您可能还对这些日志感兴趣

共有1条评论

  1. 1. 我的头像最帅! heluyao

    为了各种浏览器的兼容,我就还是比较认同直接在设置这两个属性

发表评论

(必填)

(必填,会为您保密)

评论仅支持“a、abbr、strong、em、blockquote、code”几个简单的标签