본문 바로가기
share/html

[HTML] 표 만들기 - <teble>, <th><tr><td>

by santamonicaboy 2022. 2. 14.

 

 

HTML 테이블(Table)

테이블(Table)이란 여러 종류의 데이터(data)를 보기 좋게 정리하여 보여주는 표를 의미합니다.

HTML에서는 <table>태그를 사용하여 이러한 테이블을 작성할 수 있습니다.

 

<table>태그는 다음과 같은 태그들로 구성됩니다.

 

<table>
표를 만들겠다고 선언
<caption>
표의 제목을 지정
<colgroup>
표의 서식지정을 위해 하나 이상의 열을 그룹으로 묶을 때 사용
<thead><tbody><tfoot>
표의 각 부분 (머리글, 본문, 바닥글)을 지정하기위해 사용
<tr>
표의 헤더 (테이블에서 열을 구분해 줍니다.)
<th>
표의 열 (열의 제목을 나타내며, 모든 내용은 자동으로 굵은 글씨에 가운데 정렬이 됩니다._
<td>
표의 행 (테이블의 열을 각각의 셀(cell)로 나누어 줍니다.)
<!DOCTYPE html>
<html lang="ko">

<head>
	<meta charset="UTF-8">
	<title>HTML Tables</title>
</head>

<body>

	<h1>테이블 만들기</h1>
	<table style="width:100%">
        <colgroup>
          <col/>
          <col/>
          <col/>
        </colgroup>
		<tr style="background-color:lightgrey">
			<th>참치</th>
			<th>고래</th>		
			<th>날치</th>
		</tr>
		<tr>
			<td>상어</td>
			<td>문어</td>		
			<td>꽁치</td>
		</tr>
		<tr>
			<td>오징어</td>
			<td>고등어</td>		
			<td>돌고래</td>
		</tr>
	</table>

</body>

</html>

예제 결과 값

3열 : <tr></tr>이 3번 쓰였습니다.

2행 : <td></td>이 2번 쓰였습니다.

* 요약하면 한마디로 <tr>은 줄 수 <td>는 칸 수 라고 생각하면 쉽습니다.

* caption은 검색의 용이성과 시각장애인들에게 길잡이가 되므로 특별한 문제가 없다면 쓰는 습관을 기르는게 좋습니다.

웹페이지 표시를 원하지 않을 <style>을 이용하여 capiton {display:none;}으로 감추면 됩니다.

CSS의 border 속성을 이용하여 테이블에 테두리를 표현할 수 있습니다.

border 속성값을 따로 명시하지 않으면, 해당 테이블은 언제나 빈 테두리를 가지게 됩니다.

 

 


 

 

<!DOCTYPE html>
<html lang="ko">

<head>
	<meta charset="UTF-8">
	<title>HTML Tables</title>
	<style>
		table, th, td { border: 1px solid black }
	</style>

</head>

<body>

	<h1>다양한 테이블 테두리</h1>
	<table style="width:100%">
		<tr style="background-color:lightgrey">
			<th>참치</th>
			<th>고래</th>		
			<th>날치</th>
		</tr>
		<tr>
			<td>상어</td>
			<td>문어</td>		
			<td>꽁치</td>
		</tr>
		<tr>
			<td>오징어</td>
			<td>고등어</td>		
			<td>돌고래</td>
		</tr>
	</table>

</body>

</html>

예제결과 값

 

 

위의 예제에서 테이블의 테두리(border)가 두 줄씩 나타나는 이유는 <table>태그와 <th>태그, <td>태그가 모두 자신만의 테두리를 가지고 있기 때문입니다.

 

위와 같이 두 줄로 표현되는 테두리를 한 줄로 설정하려면 border-collapse 속성을 사용해야 합니다.

border-collapse 속성값을 collapse로 설정하면, 테이블의 테두리를 한 줄로 표현할 수 있습니다.

 

 

<style>

    table, th, td { border: 1px solid black; border-collapse: collapse }

</style>

 

 


 

 

테이블의 열 합치기

colspan 속성을 사용하면 테이블의 열(column)을 합칠 수 있습니다.

<table style="width:100%">
    <tr>
        <td>참치</td>
        <td colspan="2">고래</td> 
    </tr>
    <tr>
        <td>상어</td>
        <td>문어</td>        
        <td>꽁치</td>
    </tr>
</table>

 

 

테이블의 행 합치기

rowspan 속성을 사용하면 테이블의 행(row)을 합칠 수 있습니다.

<table style="width:100%">
    <tr>
        <td rowspan="2">상어</td>
        <td>문어</td>        
        <td>꽁치</td>
    </tr>
    <tr>
        <td>고등어</td>        
        <td>돌고래</td>
    </tr>
</table>

 

colspan="합쳐지는 숫자"
행을 합칠 때 (옆과 옆)
rowspan="합쳐지는 숫자"
열을 합칠 때 (위와 아래)

 


 

 

 

테이블의 열과 행 합치기

colspan 속성과 rowspan 속성을 함께 사용하면, 더욱 복잡한 테이블도 표현할 수 있습니다.

 

<!DOCTYPE html>
<html lang="ko">

<head>
	<meta charset="UTF-8">
	<title>HTML Tables</title>
	<style>
		table, th, td {	border: 1px solid black; border-collapse: collapse }
	</style>

</head>

<body>

	<h1>테이블의 열과 행 합치기</h1>
	<table style="width:100%">
		<tr>
			<td colspan="6">1</td>
		</tr>
		<tr>
			<td colspan="6">2</td>
		</tr>
		<tr>
			<td rowspan="3">3</td>
			<td rowspan="3">4</td>
			<td colspan="2">5</td>
			<td>6</td>
			<td>7</td>
		</tr>
		<tr>
			<td colspan="3">8</td>
			<td>9</td>
		</tr>
		<tr>
			<td colspan="4">10</td>
		</tr>
	</table>

</body>

</html>
예제 결과 값

 

 
 
 

 


 

 

* 단순한 표를 만들때는 문제가 없지만, 위의 예제처럼 셀과 셀이 병합되는 복잡한 표들을 만들 땐 아무리 경력이 오래 되어도 헷갈릴 수 밖에 없는게 표 만들기 인것 같습니다. 그래서 편하게 표를 만들 수 있는 툴이나 사이트를 이용하면 한결 코딩하는데 편리하고 시간을 단축하여 만들 수 있습니다.

 

 

 

 

2022.01.27 - [share/web_etc_tip] -

코딩 - 복잡하게하지말고 쉽게하자

 

 

 

 

 


 

 

 

테이블의 캡션(caption) 설정

<caption>태그를 사용하면 테이블 상단에 제목이나 짧은 설명을 붙일 수 있습니다.

  

<table style="width:100%">
    <caption>해양 생물</caption>
    <tr>
        <td>참치</td>
        <td>고래</td>
        <td>날치</td>    
    </tr>
</table>

 

 

 

 

 

 

 

이렇게 간단하게 테이블만들기를 살펴 보았습니다. :) 

기초 테이블을 탄탄하게 인지하고 있어야지 나중에 헷갈리지 않고 만들기 쉬워요!