๐จ ํ ์ด๋ธ(table) ๊พธ๋ฏธ๊ธฐ CSS ์์ฑ ์ ๋ฆฌ
CSS ํ ์ด๋ธ ์คํ์ผ๋ง
html ํ ์ด๋ธ์ ๋ค์ ์์ฑ์ ์ฌ์ฉํ์ฌ CSS ์คํ์ผ์ ์ ์ฉํ ์ ์๋ค.
์์ฑ | ์ค๋ช |
border | ๋ชจ๋ border ์์ฑ์ ์ด์ฉํ ์คํ์ผ์ ํ ์ค์ ์ค์ ํ ์ ์์. |
border-collapse | ํ ์ด๋ธ์ ํ ๋๋ฆฌ๋ฅผ ํ ์ค๋ก ๋ํ๋ผ์ง๋ฅผ ์ค์ ํจ. |
border-spacing | ํ ์ด๋ธ ์์(th, td)๊ฐ์ ์ฌ๋ฐฑ์ ์ค์ ํจ. |
caption-side | ํ ์ด๋ธ์ ์บก์ (caption)์ ์ค์ ํจ. |
empty-cells | ํ ์ด๋ธ ๋ด์ ๋น ์ (cell)๋ค์ ํ ๋๋ฆฌ ๋ฐ ๋ฐฐ๊ฒฝ์์ ํํํ ์ง ์ ํ ์ง๋ฅผ ์ค์ ํจ. |
table-layout | ํ ์ด๋ธ์ ์ฌ์ฉ๋๋ ๋ ์ด์์ ์๊ณ ๋ฆฌ์ฆ์ ์ค์ ํจ. |
โ
๊ฐ์์ ์ฌ์ฉํ ์์ html
๊ธฐ๋ณธ์ ์ผ๋ก html์ <table> ํ๊ทธ๋ ํ๊ณผ ์ด์ ์ ๋ ฌํด์ฃผ์ง๋ง ์๋ฌด ์คํ์ผ ์์ด ์ ์ฉ๋๋ค.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>CSS Lists</title>
<style>
/* ์ฌ๊ธฐ์ ์ฝ๋๋ฅผ ๋ฃ์ ๊ฒ์ด๋ค. */
</style>
</head>
<body>
<table>
<tr>
<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 ์์ฑ
border ์์ฑ์ผ๋ก ํ ์ด๋ธ์ ํ ๋๋ฆฌ(border)๋ฅผ ์ค์ ํ ์ ์๋ค.
์ด ์์ฑ์ ๋ช ์ํ์ง ์์ผ๋ฉด ํด๋น ํ ์ด๋ธ์ ๊ธฐ๋ณธ ์ค์ ์ผ๋ก ๋น ํ ๋๋ฆฌ๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
table, th, td { border: 2px solid orange; }
โ์์ ์์ ์์ ํ ์ด๋ธ์ ํ ๋๋ฆฌ(border)๊ฐ ๋ ์ค์ฉ ๋ํ๋๋ ์ด์ ๋ <th>ํ๊ทธ์ <td>ํ๊ทธ๊ฐ ๊ฐ๊ฐ ์์ ๋ง์ ํ ๋๋ฆฌ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋์ ๋ ์ค๋ก ํํ๋๋ ํ ๋๋ฆฌ๋ฅผ ํ ์ค๋ก ์ค์ ํ๋ ค๋ฉด border-collapse ์์ฑ์ ์ฌ์ฉํด์ผ ํ๋ค.
border-collapse ์์ฑ
border-collapse ์์ฑ๊ฐ์ collapse๋ก ์ค์ ํ๋ฉด ํด๋น ํ ์ด๋ธ์ ํ ๋๋ฆฌ๋ ํ ์ค๋ก ํํ๋๋ค.
์ด ์์ฑ์ ๋ช ์ํ์ง ์์ผ๋ฉด ํด๋น ํ ์ด๋ธ์ ๊ธฐ๋ณธ ์ค์ ์ผ๋ก ํ ์ด๋ธ ์์๋ณ ํ ๋๋ฆฌ๋ฅผ ๋ชจ๋ ํํํ๊ฒ ๋๋ค.
table, th, td { border: 2px solid orange; }
table { border-collapse: collapse; }
border-spacing ์์ฑ
border-spacing ์์ฑ์ ํ ์ด๋ธ ์์(th, td)๊ฐ์ ์ฌ๋ฐฑ์ ์ค์ ํด ์ค๋ค.
table, th, td {
border: 1px solid black;
}
table {
width: 100%;
border-collapse: seperate;
border-spacing: 20px 30px;
}
text-align ์์ฑ
text-align ์์ฑ์ ํ ์ด๋ธ ์์(th, td) ๋ด๋ถ์์ ํ ์คํธ์ ์ํ ๋ฐฉํฅ ์ ๋ ฌ์ ์ค์ ํ๋ค.
- <th>ํ๊ทธ ๋ด๋ถ๋ ๊ฐ์ด๋ฐ ์ ๋ ฌ์ด,
- <td>ํ๊ทธ ๋ด๋ถ๋ ์ผ์ชฝ ์ ๋ ฌ์ด ๊ธฐ๋ณธ ์ค์ ์ด๋ค.
table, th, td {
border: 1px solid black;
}
table {
border-collapse: collapse;
width: 100%;
}
th {
text-align: left;
}
td {
text-align: center;
}
vertical-align ์์ฑ
vertical-align ์์ฑ์ ํ ์ด๋ธ ์์(th, td) ๋ด๋ถ์์ ํ ์คํธ์ ์์ง ๋ฐฉํฅ ์ ๋ ฌ์ ์ค์ ํ๋ค.
- <th>ํ๊ทธ์ <td>ํ๊ทธ ๋ชจ๋ ๊ฐ์ด๋ฐ ์ ๋ ฌ์ด ๊ธฐ๋ณธ ์ค์ ์ด๋ค.
table, th, td {
border: 1px solid black;
}
table {
border-collapse: collapse;
width: 100%;
}
th {
vertical-align: top;
height: 50px;
}
td {
vertical-align: bottom;
}
ํ ์ด๋ธ ์คํ์ผ ์์
CSS๋ฅผ ์ด์ฉํ๋ฉด HTML ๊ธฐ๋ณธ ํ ์ด๋ธ์ ํจ์ฌ ๋ ๋ค์ํ ๋ชจ์ต์ผ๋ก ์ค์ ํ ์ ์๋ค.
๋ค์ ์์ ๋ <th> ํ๊ทธ์ <td> ํ๊ทธ์ border-bottom ์์ฑ์ ์ฌ์ฉํ์ฌ ์ํ ๋๋์ ๋ง์ผ๋ก ๋ง๋ ํ
์ด๋ธ ์์ ์ด๋ค. ์ธ๋ก ๊ตฌ๋ถ์๋ ์์ด ๋ณด๋ค ๊น๋ํ ์คํ์ผ์ ๊ฒ์ํ ํ ์ฒ๋ผ ๋ง๋ค ์ ์๋ค.
table {
border-collapse: collapse;
width: 100%;
}
th, td {
padding: 10px;
border-bottom: 1px solid #CD5C5C;
}
/* ์ปค์ ๊ฐ๋ค๋๋ฉด ์๊น์ด ๋ฐ๋๋ฉฐ ์ง๊ด์ ์ผ๋ก ํํํ๋ค */
tr:hover { background-color: #F5F5F5; }
# ์ฐธ๊ณ ์๋ฃ
https://www.devkuma.com/docs/css/table/
http://www.tcpschool.com/css/css_basic_tables