테이블 행 <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

6
미래의 검색 자들이 아래 @Nathan Manousos의 답변으로 스크롤하도록 권장하는 메모 – 아마도 당신이 찾고있는 해결책 일 것입니다
henry

답변:


400

나는 전에 이와 같은 문제가 있었다. tr테두리 스타일을 직접 사용할 수 있다고 생각하지 않습니다 . 내 해결 방법은 td행 에서 s의 스타일을 지정하는 것이 었습니다 .

<tr class="border_bottom">

CSS :

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

27
이 솔루션을 사용하면 대부분 td와의 경계에 틈이 생길 수 있습니다. simoncereska의 답변 은 이것을 처리하지만 점선 또는 점선 테두리 유형이 좋지 않을 수 있습니다 (연속적이지 않기 때문에)
Griddo

24
cellspacing="0"속성으로 속성을 추가하여이 문제를 해결할 수도 있습니다 <table>( 이 질문 참조 ). 그러나 점선 또는 점선 테두리로 어떻게 보일지 모릅니다.
Stefan van den Akker 12

5
tr접는 테두리 모델에서 테두리 스타일을 사용할 수 있습니다. @ Sangram, 이것을 대신하는 대답을 고려하십시오. 아니요?
Robert Siemer

테이블 셀 사이에 패딩이 있으면 작동하지 않습니다. 패딩이 있으면 테두리가 눈에 띄게 분할됩니다.
Timothy Gonzalez

그리고 당신의 테이블은이 스타일이 필요합니다 <table style = "border-collapse : collapse">
Oguz

510

border-collapse:collapse테이블 규칙에 추가 하십시오.

table { 
    border-collapse: collapse; 
}

링크


2
이 자체로는 작동하지 않습니다. 여전히 행의 스타일을 지정할 수는 없지만 셀의 스타일을 지정할 수 있습니다.
Renan

49
@Renan 잘못되었습니다. 접는 테두리 모델은 행 테두리의 스타일을 정확하게 지정합니다. CSS sectoin 17.6 에 따르면 : 별도의 경계 모델에서“[...]은 경계를 가질 수 없습니다 (즉, 사용자 에이전트는 해당 요소의 경계 속성을 무시해야합니다). “접이식 테두리 모델에서는 셀의 전체 또는 일부를 둘러싸는 [행] 행 그룹 [...]을 지정할 수 있습니다.”그런데 그건 내 브라우저에서 작동합니다 (Chromium 37).
Robert Siemer

12
일부 사람들은 혼란스러워 할 수 있으며 국경 붕괴 스타일을 행이 아닌 테이블에 설정해야한다는 것을 알지 못합니다.
Porlune

Chrome에는이 기능이 없지만 다른 국경 축소 기능을 지원하는 것 같습니다.
Liqun Sun

72

사용하여 border-collapse:collapse테이블과 border-bottom: 1pt solid black;TR에


6
tr에 테두리를 설정하면 테두리가 축소 되어도 쓸모가 없습니다. 당신은 tr의
tds

9
@RaduSimionescu 잘못되었습니다 tr. 테두리가 축소 된 상태에서 완벽하게 작동합니다 .
Styphon

FF 45.0.1에는 영향을 미치지 않습니다.
imrek

41

사용하다

border-collapse:collapse Nathan이 쓴대로 설정해야합니다.

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


저도 그렇게 할 것입니다! td에 테두리를 추가하고 테이블에 border-collapse를 사용하십시오
Sayan

30

여기에 불완전한 답변이 많이 있습니다. tr태그에 테두리를 적용 할 수 없으므로 다음과 같이 td또는 th태그에 테두리 를 적용해야합니다 .

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
디스플레이 블록은 테이블 레이아웃을 파괴 할 수 있습니다. border-collapse : collapse는 테이블 자체에서 최상의 솔루션입니다
N4ppeL

7

box-shadow속성을 사용하여 tr요소 의 테두리를 가짜로 만들 수 있습니다 . box-shadow두께를 조정하려면 Y 위치 (아래 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;
    }

그런 다음 국경 붕괴를 주석 처리하여 무엇이 효과가 있는지 확인했습니다. bottom-border 속성을 가진 tr 선택기를 사용하면 나를 위해 일했습니다!

국경 CSS 없음 ex.

국경 CSS 없음 ex.

국경 사진 없음

국경 사진 없음

CSS 테두리 ex.

CSS 테두리 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-style, border-top-style, border-left-style, border-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>

1

이것에 대한 또 다른 해결책은 border-spacing재산입니다.

table td {
  border-bottom: 2px solid black;
}

table {
  border-spacing: 0px;
}
<table>
 <tr>
   <td>ABC</td>
   <td>XYZ</td>
</table>


1

CSS 테두리 하단이 없습니다.

<table>
    <thead>
        <tr>
            <th>Title</th>
        </tr>
        <tr>
            <th>
                <hr>
            </th>
        </tr>
    </thead>
</table>

0

tr 요소에 테두리를 넣을 수 없습니다. 이것은 파이어 폭스와 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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.