无法使用CSS colgroup

时间:2015-10-01 11:16:33

标签: javascript jquery html css html-table



p {
  width: 40px;
  margin: 0;
  padding: 0;
}
td {
  padding: 0;
  margin: 0;
}

<table style="width:100px;">
  <colgroup>
    <col style="width:20px;">
      <col style="width:40px;">
        <col style="width:40px;">
  </colgroup>
  <tr>
    <th>ID</th>
    <th>NAME</th>
    <th>Email</th>
  </tr>
  <tbody>
    <tr>
      <td>1</td>
      <td>john</td>
      <td>
        <p>johntheman@example.com dsdsdsdsdsd dsdsdsdddddddddddddddddddddddsd dsdsssssssssssssdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsdsds
          sadddddddddddddddddddddddddd
        </p>
      </td>
    </tr>
  </tbody>
</table>
&#13;
&#13;
&#13;

我有固定宽度的简单表格。我也有固定宽度的列,以便我使用CSS colgroup。

问题1:

如果我检查开发人员的工具,我的列宽度与我在colgroup中提供的工具的宽度不同。

我尝试了什么

在修复它时,我发现如果我增加文本td增加宽度会随着文本的变化而变化,反之亦然。

问题2:

当我在td中输入文字时,除非我通过点击输入在新行上打破它,否则td的宽度随着文字的增加而增加。

我尝试了什么

要解决这个问题,我已将文本包装在带有固定宽度的p标签中,然后将其放入td但仍然没有运气。我看到宽度正在应用于P标签,但文本溢出。

我的期望:

我想知道为什么文本在td的固定宽度之后没有在新行上破坏。为什么文本在固定宽度后溢出P?为什么即使在固定宽度之后td也必须增加?

我不知道我在这里申请了什么。

2 个答案:

答案 0 :(得分:1)

表的

使用css属性

table-layout: fixed;

然后修复你的td列。

答案 1 :(得分:0)

<p>标记和<td>的宽度是固定的,它们不会增加。

在文本内容中没有空格之前,它不会换行到下一行。你必须使用省略号来代替溢出的文本内容。在css下方使用<p>代码。

p {
    width: 40px;
    margin: 0;
    padding: 0;
    text-overflow: ellipsis;
    overflow: hidden;       
}