将border-bottom添加到表行<tr>


385

我有一个3 x 3的表格。我需要一种为每行底部添加边框tr并为其指定特定颜色的方法。

首先,我尝试了直接方式,即:

<tr style="border-bottom:1pt solid black;">

但这没有用。所以我像这样添加了CSS:

tr {
border-bottom: 1pt solid black;
}

那仍然没有用。

我更喜欢使用CSS,因为这样我就不必style在每一行中添加一个属性。我尚未向中添加border属性<table>。我希望那不会影响我的CSS。


附带说明一下,如果内联样式(问题中的第一个示例)不起作用,则嵌入式样式(第二个示例)不太可能起作用。您还应该研究您尝试设置样式的元素的属性的可用性:w3.org/TR/html-markup/tr.html
Tass

如果您想为表格的tr设置边框底部,可以遵循jsfiddle.net/7awN4
AllenC 2014年

6
只是为了鼓励未来的搜索者滚动到下面的@Nathan Manousos的答案,这可能是您正在寻找的解决方案
henry

Answers:


400

我以前有这样的问题。我认为tr不能直接采用边框样式。我的解决方法是td在行中设置s的样式:

<tr class="border_bottom">

CSS:

tr.border_bottom td {
  border-bottom:1pt solid black;
}

27
请注意,使用此解决方案,您很有可能在td的边界之间留有空隙。simoncereska的答案解决了这一问题,但要注意,虚线或虚线边框类型可能看起来不太好(因为它们不是连续的)
Griddo 2014年

24
您也可以通过将cellspacing="0"属性添加为来解决此问题<table>(请参阅此问题)。但是,不知道带有虚线或虚线边框的外观如何。
Stefan van den Akker,2014年

5
tr可以在折叠的边框模型中采用边框样式。@Sangram,考虑接受一个考虑到该问题的答案,而不是这个答案,不是吗?
罗伯·西默

如果表格单元格之间有填充,这将不起作用。如果有填充物,则边框将被分割为整块。
蒂莫西·冈萨雷斯

并且您的表格需要这种样式<table style =“ border-collapse:collapse”>
Oguz

510

添加border-collapse:collapse到您的表格规则中:

table { 
    border-collapse: collapse; 
}

链接


2
这本身不起作用。您仍然无法设置行的样式,但是可以设置单元格的样式。
雷南2014年

49
你错了,@ Renan。崩溃的边框模型正是使行边框可样式化的原因。根据CSS sectoin 17.6:在单独的边框模型中,“行不能有边框(即,用户代理必须忽略这些元素的边框属性)。” “在折叠的边框模型中,可以指定包围整个或部分单元格,行[和]行组[...]的边界。”顺便说一句:它确实可以在我的浏览器中使用(Chromium 37)。
罗伯·西默

12
我认为有些人可能会感到困惑(就像我一样),并且没有注意到边框折叠样式需要在表格上而不是在行上设置。
Porlune '16

Chrome似乎没有此功能,尽管它支持其他的边框折叠功能。
Liqun Sun

72

使用border-collapse:collapse上表border-bottom: 1pt solid black;的TR


6
即使在边框折叠的情况下,在tr上设置边框也是没有用的。您必须将其设置在tr的tds上
Radu Simionescu

9
@RaduSimionescu错误,它在tr边框折叠时效果很好。
斯蒂芬,2015年

在FF 45.0.1中无效。
imrek '16

41

采用

border-collapse:collapse 如内森(Nathan)所写,您需要设置

td { border-bottom: 1px solid #000; }


那就是我也会这样做的方式!在td上添加边框并在表格上使用border-collapse
Sayan

30

这里有很多不完整的答案。由于您无法在tr标签上应用边框,因此需要将其应用于tdth标签,如下所示:

td {
  border-bottom: 1pt solid black;
}

这样做会在每个之间留一个很小的空间td,如果您希望边框看起来像是tr标签,这可能是不希望的。可以这么说,为了“填补空白”,您需要利用元素border-collapse上的属性table并将其值设置为collapse,如下所示:

table {
  border-collapse: collapse;
}

8

采用

table{border-collapse:collapse}
tr{border-top:thin solid}

用CSS属性替换“薄固体”。


7

将行显示为块。

tr {
    display: block;
    border-bottom: 1px solid #000;
}

并简单地显示其他颜色:

tr.oddrow {
    display: block;
    border-bottom: 1px solid #F00;
}

11
将设置display: block并不是一个好主意tr。用tr td { border-bottom: ... }广告tr.oddrow td { border-bottom: ... }来代替
vladr

4
display block可能会破坏表格布局。border-collapse:表格本身的折叠绝对是最好的解决方案
N4ppeL 2014年

7

您可以使用该box-shadow属性来伪造tr元素的边框。调整的Y位置box-shadow(以下表示为2px)以调整厚度。

tr {
  -webkit-box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.99);
  -moz-box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.99);
  box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.99);
}

6

我尝试添加

    table {
      border-collapse: collapse;
    }   

旁边

    tr {
      bottom-border: 2pt solid #color;
    }

然后注释掉边界崩溃以查看有效方法。只是让具有底部边界属性的tr选择器对我有用!

没有Border CSS ex。

没有Border CSS ex。

无边框照片直播

无边框照片直播

CSS Border ex。

CSS Border ex。

带有边框照片的桌子直播

带有边框照片的桌子直播


2

我发现使用这种方法时,td元素之间的间隔会在边框中形成间隙,但不要担心...

解决此问题的一种方法:

<tr>
    <td>
        Example of normal table data
    </td>

    <td class="end" colspan="/* total number of columns in entire table*/">
        /* insert nothing in here */ 
    </td>
</tr>

使用CSS:

td.end{
    border:2px solid black;
}

2

<td style="border-bottom-style: solid; border-bottom: thick dotted #ff0000; ">

您也可以对整个行执行相同的操作。

border-bottom-styleborder-top-styleborder-left-styleborder-right-style。或者简单地border-style其应用于所有四个边界。

您可以在此处查看(并在线尝试)更多详细信息


2

几个有趣的答案。由于您只想要边框的底部(或顶部),这里还有两个。假设您想要一个3px厚的蓝色边框。在样式部分,您可以添加

.blueB {background-color:blue; height:3px} or
hr {background-color:blue; color:blue height:3px}

在表格代码中

<tr><td colspan='3' class='blueB></td></tr> or
<tr><td colspan='3'><hr></td></tr>



0

您不能在tr元素上加边框。这在firefox和IE 11中对我有用:

<td style='border-bottom:1pt solid black'>

您不能在tr上加边框。编辑答案以澄清这一点。
Decko

那是最简单,最准确的答案。
JamesC

-3

的HTML

<tr class="bottom-border">
</tr>

的CSS

tr.bottom-border {
  border-bottom: 1px solid #222;
}

2
没有边界崩溃就没用:崩溃;
m1crdy
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.