html - 为什么不跨越行的 100% 宽度?HTML CSS
问题描述
我已经创建了一个基本的 HTML 表格,但我似乎无法让顶部<th>
元素跨越其父<tr>
元素(以及最终<table>
元素)的 100% 宽度。
.my-card-table {
width: 100%;
border: 1px solid #D9D7D6;
table-layout: fixed!important;
}
.table-top-heading {
display: block;
text-align: center;
}
.my-card-table-heading {
background-color: #E9E9E9!important;
font-family: "Proxima Nova Regular";
color: #000000;
font-size: 1rem;
padding: 10px 5px 10px 5px;
}
.my-card-table-heading-inner {
background-color: #E9E9E9!important;
font-family: "Proxima Nova Regular";
color: #000000;
font-size: 1rem;
text-align: left;
padding: 10px 0 10px 30px
}
.my-card-table-row-grey {
background-color: #F2F3F3!important;
padding: 10px!important;
}
.my-card-table-row-white {
background-color: #ffffff!important;
padding: 10px!important;
}
..my-table-td {
text-align: left;
padding-left: 30px;
}
.my-card-link {
color: #0e5b8b;
}
.my-card-link:hover {
font-family: "Proxima Nova Bold";
color: #0e5b8b;
}
.my-card-link-2 {
color: #212529;
}
<table class="my-card-table">
<tr class="table-top-heading">
<th class="table-top-heading-header">HelloWorld</th>
</tr>
<tr class="my-card-table-heading">
<th class="my-card-table-heading-inner">Teachers</th>
<th class="my-card-table-heading-inner">School</th>
<th class="my-card-table-heading-inner">Status</th>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 1</a></td>
<td class="my-table-td">Long Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 2</a></td>
<td class="my-table-td">Long Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 3</a></td>
<td class="my-table-td">Lincolnshire</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 4</a></td>
<td class="my-table-td">Buffalo Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 5</a></td>
<td class="my-table-td">Kenilworth</td>
<td class="my-table-td">Not Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 6</a></td>
<td class="my-table-td">Schaumburg</td>
<td class="my-table-td">Not Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 7</a></td>
<td class="my-table-td">Schaumburg</td>
<td class="my-table-td">Not Logged In</td>
</tr>
</table>
因此,当您运行该代码片段时 ^ 我想看到的是位于“教师、学校、状态”行上方的“helloWorld”。我不确定为什么它似乎只扩大了表格宽度的四分之一——这与table-layout: fixed
我在<table>
元素上设置的样式有关吗?
解决方案
两件事情:
1.)您需要将其添加colspan="3"
为一个属性,th
以使其跨越该表的所有三列。
2.) 你不应该使用display: block
一个表格元素,不管那是td
, th
,tr
还是别的什么。th
默认情况下的显示设置是table-cell
- 保持原样,否则表格最终不会是“真正的表格”(即单元格会失去其自动对齐和调整自己的方式)。
.my-card-table {
width: 100%;
border: 1px solid #D9D7D6;
table-layout: fixed!important;
}
.table-top-heading {
text-align: center;
}
.my-card-table-heading {
background-color: #E9E9E9!important;
font-family: "Proxima Nova Regular";
color: #000000;
font-size: 1rem;
padding: 10px 5px 10px 5px;
}
.my-card-table-heading-inner {
background-color: #E9E9E9!important;
font-family: "Proxima Nova Regular";
color: #000000;
font-size: 1rem;
text-align: left;
padding: 10px 0 10px 30px
}
.my-card-table-row-grey {
background-color: #F2F3F3!important;
padding: 10px!important;
}
.my-card-table-row-white {
background-color: #ffffff!important;
padding: 10px!important;
}
..my-table-td {
text-align: left;
padding-left: 30px;
}
.my-card-link {
color: #0e5b8b;
}
.my-card-link:hover {
font-family: "Proxima Nova Bold";
color: #0e5b8b;
}
.my-card-link-2 {
color: #212529;
}
<table class="my-card-table">
<tr class="table-top-heading">
<th class="table-top-heading-header" colspan="3">HelloWorld</th>
</tr>
<tr class="my-card-table-heading">
<th class="my-card-table-heading-inner">Teachers</th>
<th class="my-card-table-heading-inner">School</th>
<th class="my-card-table-heading-inner">Status</th>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 1</a></td>
<td class="my-table-td">Long Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 2</a></td>
<td class="my-table-td">Long Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 3</a></td>
<td class="my-table-td">Lincolnshire</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 4</a></td>
<td class="my-table-td">Buffalo Grove</td>
<td class="my-table-td">Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 5</a></td>
<td class="my-table-td">Kenilworth</td>
<td class="my-table-td">Not Logged In</td>
</tr>
<tr class="my-card-table-row-white">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 6</a></td>
<td class="my-table-td">Schaumburg</td>
<td class="my-table-td">Not Logged In</td>
</tr>
<tr class="my-card-table-row-grey">
<td class="my-table-td"><a href="" onclick="return false" class="my-card-link">Teacher 7</a></td>
<td class="my-table-td">Schaumburg</td>
<td class="my-table-td">Not Logged In</td>
</tr>
</table>
推荐阅读
- flutter - 如何设置默认日期选择器值?
- python - 具有历史记录的 Python 数组数据结构
- c# - Razor 页面标签采用 ViewContext.Routing.Value id 而不是给定的 ID
- python - Django - 模型中的关系
- javascript - 验证不适用于多部分/表单数据主体
- opencv - 使用彩色图像进行面部识别?
- ios - Swift base 64 string DIRECTLY to Jpeg on filesystem
- python - 如何按特定模式对序列中的单词进行排序
- javascript - Javascript在两个相同字符之间获得subsring?
- android - Flutter 中的缓冲文件读取