css 制作表格
CSS 制作表格的方法
使用 CSS 制作表格可以通过多种方式实现,包括原生 HTML 表格样式、Flexbox 布局或 Grid 布局。以下是几种常见的方法:
原生 HTML 表格样式
HTML 提供了 <table>、<tr>、<th> 和 <td> 等标签来创建表格,通过 CSS 可以对其进行样式调整。
<table class="custom-table">
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
<tr>
<td>Data 1</td>
<td>Data 2</td>
</tr>
</table>
.custom-table {
width: 100%;
border-collapse: collapse;
}
.custom-table th, .custom-table td {
border: 1px solid #ddd;
padding: 8px;
text-align: left;
}
.custom-table th {
background-color: #f2f2f2;
}
.custom-table tr:nth-child(even) {
background-color: #f9f9f9;
}
使用 Flexbox 布局
Flexbox 可以用于创建更灵活的表格布局,适合需要动态调整列宽的情况。
<div class="flex-table">
<div class="flex-row header">
<div class="flex-cell">Header 1</div>
<div class="flex-cell">Header 2</div>
</div>
<div class="flex-row">
<div class="flex-cell">Data 1</div>
<div class="flex-cell">Data 2</div>
</div>
</div>
.flex-table {
display: flex;
flex-direction: column;
width: 100%;
}
.flex-row {
display: flex;
border-bottom: 1px solid #ddd;
}
.flex-cell {
flex: 1;
padding: 8px;
}
.header .flex-cell {
font-weight: bold;
background-color: #f2f2f2;
}
使用 Grid 布局
CSS Grid 提供了更强大的二维布局能力,适合复杂的表格设计。
<div class="grid-table">
<div class="grid-header">Header 1</div>
<div class="grid-header">Header 2</div>
<div class="grid-cell">Data 1</div>
<div class="grid-cell">Data 2</div>
</div>
.grid-table {
display: grid;
grid-template-columns: 1fr 1fr;
width: 100%;
}
.grid-header, .grid-cell {
padding: 8px;
border: 1px solid #ddd;
}
.grid-header {
font-weight: bold;
background-color: #f2f2f2;
}
响应式表格设计
对于移动设备,可以通过媒体查询调整表格布局,例如将表格转换为卡片式布局。
@media (max-width: 600px) {
.flex-row {
flex-direction: column;
}
.flex-cell {
border-bottom: 1px solid #ddd;
}
}
以上方法可以根据需求选择,原生表格适合简单的数据展示,Flexbox 和 Grid 适合更灵活的布局需求。







