如何使表格中的列无论数量如何都设置宽度?

问题描述 投票:0回答:1

我希望能够让标题行(顶部)中的每个单元格保持相同的宽度(以像素为单位),无论底部的表格是什么。该图显示了底部表格中有 12 列的示例。

example of what I'm trying to generate

我使用 python 生成 HTML,因此我可以获得列数,然后根据数字执行 colspan 以使顶行足够接近。我想知道是否有更好的方法?我考虑过在一个单元格内制作底部表格,但我希望它看起来无缝,而且我也不知道如何做到这一点

html html-table
1个回答
0
投票

为了让表中的所有行保持相同宽度的列,而不管其他行中的列数如何,我们可以使用 Flexbox 布局。

.table {
      display: flex;
      flex-direction: column;
      border: 1px solid #ddd;
      width: 100%;
    }

    .row {
      display: flex;
      width: 100%;
    }

    .row .cell {
      flex: 1;
      border: 1px solid #ddd;
      padding: 10px;
      text-align: center;
    }
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
  <div class="table">
    <div class="row">
      <div class="cell">Row 1 - Col 1</div>
      <div class="cell">Row 1 - Col 2</div>
      <div class="cell">Row 1 - Col 3</div>
    </div>
    <div class="row">
      <div class="cell">Row 2 - Col 1</div>
      <div class="cell">Row 2 - Col 2</div>
    </div>
    <div class="row">
      <div class="cell">Row 3 - Col 1</div>
      <div class="cell">Row 3 - Col 2</div>
      <div class="cell">Row 3 - Col 3</div>
      <div class="cell">Row 3 - Col 4</div>
    </div>
  </div>
</body>
</html>

这样做也有一些优点,比如不需要给列指定特定的宽度,而且表格会根据屏幕宽度进行调整。

© www.soinside.com 2019 - 2024. All rights reserved.