【问题标题】:Text-overflow: ellipsis not working on th element文本溢出:省略号不适用于 th 元素
【发布时间】:2016-11-15 04:16:44
【问题描述】:

我有这个带有th 元素和text-overflow: ellipsis; overflow: hidden; white-space: nowrap; 的标记。

另外,tdth 设置为 display: block

当我在th 上添加width: 130px 之类的内容时,文本将显示省略号,否则不会。

我不知道还要在代码中添加什么,所以我将发布我目前所拥有的内容:

table {
  display: flex;
  overflow: hidden;
}
thead {
  display: flex;
  flex-shrink: 0;
  width: 30%;
}
tbody {
  display: flex;
  position: relative;
  width: 70%;
  overflow-x: auto;
}
tr {
  display: flex;
  flex-direction: column;
  min-width: 100%;
  flex-shrink: 0;
}
td,
th {
  display: block;
  font-size: 13pt;
  border: 1px solid black;
}
td {
  border-left: 0;
}
th {
  background-color: DarkSlateBlue;
  font-weight: bold;
  color: white;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
th:not(:last-child),
td:not(:last-child) {
  border-bottom: 0;
}
<table>
  <thead>
    <tr id="trParticipantes">
      <th>&nbsp;</th>
      <th>Crispy Bacooooooooooooooooooooon</th>
      <th>Marco</th>
      <th>Filipe</th>
    </tr>
  </thead>
  <tbody id="tbodyTempos">
    <tr>
      <td>Fase 1</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 2</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 3</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 4</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 5</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 6</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 7</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 8</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 9</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 10</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 11</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 12</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 13</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 14</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 15</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 16</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 17</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 18</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 19</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
    <tr>
      <td>Fase 20</td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
      <td>
        <input class="tempo" min="0" step=".1" type="number">
      </td>
    </tr>
  </tbody>
</table>

【问题讨论】:

  • 你把变成了flexbox布局,是什么原因?
  • 获取响应式表格。 tbody 将根据用户滑动滚动。 thead 固定在左侧,tbody 固定在右侧,每个都占据父元素宽度的 50%(示例中我放了一个滚动条)

标签: html css html-table flexbox ellipsis


【解决方案1】:

你的 tr 上的 'flex-shrink' 属性需要设置为 1,否则它只会从表中流出到下一个。默认值为 1,它告诉显示器缩小 x 框中其他项目的值,因为只有一项会填满框。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-03
    • 2013-05-02
    • 2019-04-04
    • 2018-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-15
    相关资源
    最近更新 更多