表格行边框在 Firefox 和 Safari 中不起作用

Posted

技术标签:

【中文标题】表格行边框在 Firefox 和 Safari 中不起作用【英文标题】:Table row border doesn't work in Firefox and Safari 【发布时间】:2012-05-01 07:42:55 【问题描述】:

我希望表格行的底部和顶部都有边框。下面的代码在 IE 中有效,但在 Firefox 或 Safari 中无效!请帮忙!

html

 <tr class='TableRow'>

CSS

.TableRow
   border-bottom: 2px solid rgb(167,167,167);
   border-top: 2px solid rgb(167,167,167);
  

【问题讨论】:

【参考方案1】:

据我所知,您无法通过 CSS 为表格行设置边框。但我会建议您解决此问题:将边框设置为行内的单元格,然后使用 cellspacing="0"。 这是 CSS:

.TableRow td
   border-bottom: 2px solid rgb(167,167,167);
   border-top: 2px solid rgb(167,167,167);

一个示例 HTML 将是:

<table cellspacing="0">
    <tr class="TableRow">
        <td>A</td>
        <td>B</td>
    </tr>
    <tr>
        <td>C</td>
        <td>D</td>
    </tr>
</table>

第一行是有边框的。

希望对您有所帮助。

编辑:我尝试了您的代码,但没有在任何浏览器(包括 IE)中显示边框。

【讨论】:

只有在我给我的&lt;table&gt; 一个border-collapse: separate 的CSS 声明后,这才对我有用。【参考方案2】:

这能解决您的问题吗?

tr.TableRow td 
  border-bottom: 2px solid rgb(167,167,167);
  border-top: 2px solid rgb(167,167,167);

它将为类TableRow 的任何行中的所有表格数据添加边框。在开始时添加tr. 是一种很好的做法,因为我假设您只会将此类与表格行一起使用。

如果您将其应用于多行 - 您可能还需要添加 border-collapse:collapse;,这会将边框折叠成单个边框。

【讨论】:

【参考方案3】:

border-collapse:collapse添加到表格中,然后您可以为tr添加边框。

例子:

table.myTable
  border-collapse:collapse;


table.myTable tr
  border:1px solid red;

【讨论】:

以上是关于表格行边框在 Firefox 和 Safari 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

防止在 Safari 和 Firefox 中选择和复制表格列?

网页制作中表格边框设置在FireFox下的问题

Firefox中折叠的表格边框有时会丢失

表格中的图像:如何使 Firefox 的行为与 IE 相同

为啥 Firefox 缺少某些 HTML 表格的边框

input标签存在的兼容问题?