CSS技巧:网页设计关于cellspacing和cellpadding

2016-03-02    编辑:csser     点击(

表格的cellpadding和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>

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