代码之家  ›  专栏  ›  技术社区  ›  bellotas

带固定头的引导表-角形5

  •  0
  • bellotas  · 技术社区  · 6 年前

    我用HTML创建了一个表,我想显示它的标题是固定的(滚动只会影响到正文)。

    我找到了一个解决方案,它几乎可以按我想要的方式工作。

    tbody {
      display:block;
      height:500px;
      overflow:auto;
    }
    thead, tbody tr {
      display:table;
      width:100%;
      table-layout:fixed;/* even columns width , fix width of table too*/
    }
    thead {
      width: calc( 100% - 1em )/* scrollbar is average 1em/16px width, remove it from thead width */
    }
    table {
      width:400px;
    }
    

    问题是这个属性 table-layout: fixed ,它固定了列的宽度,因此没有正确显示我的列(它们重叠):

    enter image description here

    我怎么修? 我已经尝试了四个可能的值 table-layout

    1 回复  |  直到 6 年前
        1
  •  0
  •   לבני מלכה    6 年前

    使用 td {word-wrap: break-word;}

    tbody {
      display:block;
      height:500px;
      overflow:auto;
    }
    thead, tbody tr {
      display:table;
      width:100%;
      table-layout:fixed;/* even columns width , fix width of table too*/
    }
    td{
        word-wrap: break-word;
    }
    thead {
      width: calc( 100% - 1em )/* scrollbar is average 1em/16px width, remove it from thead width */
    }
    table {
      width:400px;
    }
    <table class="a">
      <thead>
        <th>Company</th>
        <th>Contact</th>
        <th>Country</th>
      </thead>
      <tbody>
      <tr>
        <td>AlfredsFutterkisteghrtrh</td>
        <td>Maria Anders</td>
        <td>Germany</td>
      </tr>
      <tr>
        <td>Island Trading</td>
        <td>Helen Bennett</td>
        <td>UK</td>
      </tr>
      <tr>
        <td>Magazzini Alimentari Riuniti</td>
        <td>Giovanni Rovelli</td>
        <td>Italy</td>
      </tr>
        <tr>
        <td>Magazzini Alimentari Riuniti</td>
        <td>Giovanni Rovelli</td>
        <td>Italy</td>
      </tr>
        <tr>
        <td>Magazzini Alimentari Riuniti</td>
        <td>Giovanni Rovelli</td>
        <td>Italy</td>
      </tr>
        <tr>
        <td>Magazzini Alimentari Riuniti</td>
        <td>Giovanni Rovelli</td>
        <td>Italy</td>
      </tr>
      </tbody>
    </table>