<table>
<table> 태그는 표를 설정합니다.
테이블은 테이터를 포함하는 셀의 행과 열로 구성된 정보표입니다. 예전에는 테이블을 이용해서 레이아웃을 표현한 적도 있지만 웹표준을 준수해야 하는 현재는 테이블을 이용해서 레이아웃을 만드는 것은 적절하지 않습니다. 테이블을 쓰기 위해서는 즉 표를 만들기 위해서는 제목, 설명, 셀, 셀합치기, 표 구조, 셀 그룹 등 여러가지를 신경써야 합니다.
테이블은 제목을 표시하기 위해 <caption>을 사용하고 셀 요소를 그룹화하기 위해 <colgroup>과 <col>을 사용합니다. 테이블 전체 구조를 분리하기 위해 <thead>, <tbody>, <tfoot>를 사용하며, 행과 열을 나타내는 <tr>, <td> <th> 등을 사용합니다. 여기에 접근성을 위해 scope 속성을 사용하고 셀의 병합을 위해 colspan과 rowspan을 사용하게 됩니다.
<table>
<table> 태그는 표를 설정합니다.
특징 | 설명 |
---|---|
요소 | 블록 요소(Block Element) |
닫는 태그 | 닫는 태그 사용(<table> ~ </table>) |
버전 | HTML4 |
시각적 표현 | 표 |
사용성 |
정의(Definition)
- <table> 태그는 표를 정의합니다.
- <table> 태그는 기본적으로 <tr>, <td>, <th>로 구성되어 있습니다.
- <table> 태그는 추가적으로 <caption>, <col>, <colgroup>, <thead>, <tbody>, <tfoot> 요소를 포함하고 있습니다.
- <table> 태그는 주로 게시판 영역이나 회원가입 영역, 표를 나타내는 영역에서 많이 사용합니다.
- 레이아웃을 목적으로 사용은 적합하지 않지만, 예외적으로 메일을 보낼 때는 레이아웃을 목적으로 사용 할 수도 있습니다.
table과 관련된 태그(Flex Related Tags)
- <table> 태그는 표를 설정합니다.
- <caption> 태그는 표의 제목을 설정합니다.
- <thead> 태그는 표의 헤더 영역을 그룹화합니다.
- <tbody> 태그는 표의 본문 영역을 그룹화합니다.
- <tfoot> 태그는 표의 푸터 영역을 그룹화합니다.
- <tr> 태그는 표의 행을 설정합니다.
- <td> 태그는 표의 열(셀)을 설정합니다.
- <th> 태그는 행이나 열에 타이틀을 설정합니다.
- <colgroup> 태그는 표의 열을 묶는 그룹을 설정합니다.
- <col> 태그는 <colgroup> 요소에 속하는 각 열의 속성을 설정합니다.
크로스브라우징(CrossBroswing)
- HTML5에서는 "align", "bgcolor", "border", "cellpadding", "cellspacing", "frame", "rules", "summary", "width" 속성을 지원하지 않습니다.
속성(Property)
속성 | 값(예) | 설명 | 버전 |
---|---|---|---|
|
|
||
|
|||
예제1(Sample)
표를 설정한 예제입니다.
표 제목1 | 표 제목2 | 표 제목3 | 표 제목4 | 표 제목5 |
---|---|---|---|---|
표 내용1 | 표 내용1 | 표 내용1 | 표 내용1 | 표 내용1 |
표 내용2 | 표 내용2 | 표 내용2 | 표 내용2 | 표 내용2 |
표 내용3 | 표 내용3 | 표 내용3 | 표 내용3 | 표 내용3 |
표 내용4 | 표 내용4 | 표 내용4 | 표 내용4 | 표 내용4 |
표 내용5 | 표 내용5 | 표 내용5 | 표 내용5 | 표 내용5 |
HTML
CSS
SCRIPT
<table class="sample-table">
<caption>표 제목 설정</caption>
<colgroup>
<col>
<col class="blue">
<col class="red" span="2">
<col>
</colgroup>
<thead>
<tr>
<th>표 제목1</th>
<th>표 제목2</th>
<th>표 제목3</th>
<th>표 제목4</th>
<th>표 제목5</th>
</tr>
</thead>
<tbody>
<tr>
<td>표 내용1</td>
<td>표 내용1</td>
<td>표 내용1</td>
<td>표 내용1</td>
<td>표 내용1</td>
</tr>
<tr>
<td>표 내용2</td>
<td>표 내용2</td>
<td>표 내용2</td>
<td>표 내용2</td>
<td>표 내용2</td>
</tr>
<tr>
<td>표 내용3</td>
<td>표 내용3</td>
<td>표 내용3</td>
<td>표 내용3</td>
<td>표 내용3</td>
</tr>
<tr>
<td>표 내용4</td>
<td>표 내용4</td>
<td>표 내용4</td>
<td>표 내용4</td>
<td>표 내용4</td>
</tr>
<tr>
<td>표 내용5</td>
<td>표 내용5</td>
<td>표 내용5</td>
<td>표 내용5</td>
<td>표 내용5</td>
</tr>
</tbody>
</table>
table th,
table td {
border: 1px solid #ccc;
padding: 10px;
}
table .blue {background: #deeeff;}
table .red {background: #ffdddd;}
//javascript none
호환성(Compatibility)
6 | 7 | 8 | 9 | 10 | 11 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
<table> | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
align | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
bgcolor | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
border | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
cellpadding | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
cellspacing | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
frame | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
rules | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
summary | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |
width | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 | 사용가능 |