html - 用html和css制作表格,但没有对齐
问题描述
我目前正在我网站的底部制作一张表格。有 3 列,我试图让它们对齐。我的 CSS 中也有 text-align 。但是,中间的列在右侧,表格中的框也是如此。我真的不知道是什么导致了这种情况以及如何解决它/更好的方法来解决这个问题。一些帮助将不胜感激!
.counties {
text-align: center;
font-family: 'Ubuntu', Helvetica, Arial, sans-serif;
font-size: 40px;
color: white;
background: #7d7d7d;
border-radius: 40px;
margin: 10px;
}
<table class="counties" style="width:100%">
<tr>
<th>Counties</th>
<th>Cases</th>
<th>Deaths</th>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
</table>
解决方案
中心列不以表格为中心,因为表格会调整列的宽度以适应其内容。“国家”一词比“病例”或“死亡”长,因此该列更宽,将中间列推向右侧。
当table-layout
CSS 属性设置为时会发生这种情况auto
,这是默认设置。要使列的宽度相等,请设置table-layout
为fixed
。
在下面的示例中,第一个表有table-layout: auto
,第二个有table-layout: fixed
。您可以看到,在第二个选项中,中心列位于表格的真正中间,正如我认为您所希望的那样。
table, th, td {
border: 1px solid black;
}
table {
text-align: center;
border-collapse: collapse;
}
.table-1 {
table-layout: auto;
}
.table-2 {
table-layout: fixed;
}
<table class="table-1" style="width:300px">
<tr>
<th>Counties</th>
<th>Cases</th>
<th>Deaths</th>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
</table>
<table class="table-2" style="width:300px">
<tr>
<th>Counties</th>
<th>Cases</th>
<th>Deaths</th>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
<tr>
<td>example</td>
<td>example</td>
<td>example</td>
</tr>
</table>
推荐阅读
- php - $Order 访问受保护的数组
- python - 破折号:执行触发功能时的“锁定”按钮
- spring-boot - 如何使用 Spring Boot 正确设置 JDBC 控制器类?
- testing - cygwin jest 和 git 的“--watch 不支持没有 git/hg”
- c# - foreach 语句不能对“IContainer”类型的变量进行操作
- bash - 错误:(gcloud.services.enable)用户没有访问项目的权限(或者它可能不存在):调用者没有权限
- pgadmin-4 - 无法在 pgadmin4 中找到服务器下拉列表
- angular - Angular 7:localhost路由有效,在路由更新时部署后=>未找到
- c - 将一行读入动态分配的字符指针数组时出现段错误
- port - 有什么方法可以阻止 GKE 上负载均衡器的端口吗?