在 CSS 中设置 cellpadding 和 cellspacing?

问题描述

为了控制 CSS 中的“cellpadding”,您可以简单地padding在表格单元格上使用。例如对于 10px 的“cellpadding”:

td { 
    padding: 10px;
}

对于“cellspacing”,您可以将border-spacingCSS 属性应用于您的表格。例如对于 10px 的“cellspacing”:

table { 
    border-spacing: 10px;
    border-collapse: separate;
}

此属性甚至允许单独的水平和垂直间距,这是老式的“单元格间距”无法做到的。

这将适用于几乎所有流行的浏览器,除了 Internet Explorer 到 Internet Explorer 7,你几乎不走运。我说“几乎”是因为这些浏览器仍然支持border-collapse合并相邻表格单元格边界的属性。如果您试图消除单元格间距(即 ),cellspacing="0"那么border-collapse:collapse应该具有相同的效果:表格单元格之间没有空格。但是,这种支持是有问题的,因为它不会覆盖cellspacingtable 元素上的现有 HTML 属性。

简而言之:对于非 Internet Explorer 5-7 浏览器,border-spacing处理您。对于 Internet Explorer,如果您的情况恰到好处(您想要 0 个单元格间距并且您的表格尚未定义它),您可以使用border-collapse:collapse.

table { 
    border-spacing: 0;
    border-collapse: collapse;
}

默认

浏览器的默认行为等价于:

table {border-collapse: collapse;}
td    {padding: 0px;}

在此处输入图像描述

单元格填充

设置单元格内容和单元格壁之间的空间量

table {border-collapse: collapse;}
td    {padding: 6px;}

在此处输入图像描述

单元格间距

控制表格单元格之间的空间

table {border-spacing: 2px;}
td    {padding: 0px;}

在此处输入图像描述

两个都

table {border-spacing: 2px;}
td    {padding: 6px;}

在此处输入图像描述

两者(特殊)

table {border-spacing: 8px 2px;}
td    {padding: 6px;}

在此处输入图像描述

如果有border-spacing设置,则表示border-collapse该表的属性为separate

解决方法

在 HTML 表格中,cellpaddingandcellspacing可以这样设置:

<table cellspacing="1" cellpadding="1">

如何使用 CSS 实现相同的功能?

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...