在HTML表格中,单元格填充和单元格间距可以这样设置:
<table cellspacing="1" cellpadding="1">
如何使用CSS实现这一点?
在HTML表格中,单元格填充和单元格间距可以这样设置:
<table cellspacing="1" cellpadding="1">
如何使用CSS实现这一点?
当前回答
只需对表数据使用CSS填充规则:
td {
padding: 20px;
}
对于边框间距:
table {
border-spacing: 1px;
border-collapse: collapse;
}
然而,由于box模型的diff实现,它可能会在旧版本的浏览器(如Internet Explorer)中产生问题。
其他回答
此样式用于表格的完全重置-单元格填充、单元格间距和边框。
我的reset.css文件中有这样的样式:
table{
border:0; /* Replace border */
border-spacing: 0px; /* Replace cellspacing */
border-collapse: collapse; /* Patch for Internet Explorer 6 and Internet Explorer 7 */
}
table td{
padding: 0px; /* Replace cellpadding */
}
此黑客适用于Internet Explorer 6及更高版本、Google Chrome、Firefox和Opera:
table {
border-collapse: separate;
border-spacing: 10px; /* cellspacing */
*border-collapse: expression('separate', cellSpacing = '10px');
}
table td, table th {
padding: 10px; /* cellpadding */
}
*声明适用于Internet Explorer 6和7,其他浏览器将正确忽略它。
expression('separate',cellSpacing='10px')返回'separate',但这两个语句都运行,因为在JavaScript中,您可以传递比预期更多的参数,所有参数都将被求值。
假设我们希望以符合HTML5的方式为表分配10px的“cellpadding”和15px的“cellspacing”。我将在这里展示两种方法,给出非常相似的输出。
两组不同的CSS财产应用于表的相同HTML标记,但概念相反:
第一个使用边界折叠的默认值(单独),并使用边界间距提供单元间距,第二个选项将边界折叠切换为折叠,并使用border属性作为cellspacing。
在这两种情况下,cellpadding都是通过为tds指定padding:10px来实现的,在这两个情况下,为它们指定的背景色只是为了更清晰的演示。
第一种方法:
表{边框间距:15px}td{背景色:#00eb55;填充:10px;边框:0}<表><tr><td>标题1</td><td>标题2</td></tr><tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr></table>
第二种方法:
表{边框塌陷:塌陷}td{背景色:#00eb55;填充:10px;边框:15px纯色#fff}<表><tr><td>标题1</td><td>标题2</td></tr><tr><td>1</td><td>2</td></tr><tr><td>3</td><td>4</td></tr></table>
对于那些想要非零单元格间距值的人,下面的CSS对我有用,但我只能在Firefox中测试它。
有关兼容性的详细信息,请参阅其他地方发布的Quirksmode链接。它似乎不适用于较旧的Internet Explorer版本。
table {
border-collapse: separate;
border-spacing: 2px;
}
违约
浏览器的默认行为相当于:
table {border-collapse: collapse;}
td {padding: 0px;}
单元格填充
设置单元格内容与单元格墙之间的空间量
table {border-collapse: collapse;}
td {padding: 6px;}
单元格间距
控制表格单元格之间的间距
table {border-spacing: 2px;}
td {padding: 0px;}
Both
table {border-spacing: 2px;}
td {padding: 6px;}
两者(特殊)
table {border-spacing: 8px 2px;}
td {padding: 6px;}
注意:如果设置了边框间距,则表示表的边框折叠属性是单独的。
自己试试吧!
在这里,您可以找到实现这一点的旧HTML方法。