当另一个单元格跨越2行时,如何使表格单元格不伸展?

时间:2016-12-07 21:10:50

标签: html css html-table

的信息:

我正在为一个项目创建一个票证类型的表格,但我正在努力不让一些单元格伸展。

的jsfiddle:

如果描述太长,ACTIVE单元格会被拉长。

https://jsfiddle.net/7dj7a41d/

我希望它看起来像这样,但我还需要能够拥有更多的字符而不会拉伸任何其他行或列。

https://jsfiddle.net/19Loa5ax/

我尝试过玩rowspan而且我也尝试过搬家,但我还没有找到解决方案。

2 个答案:

答案 0 :(得分:0)

您可以在该td上设置最大宽度。

<td style="text-align:left;padding:0 0 0 15px; max-width: 100px;" rowspan="2">Description goes here, this is now too long......</td>  

我还会删除第一个div的高度,因为缩小视口时它看起来不太好。

    height: 102px;  <-- remove this

答案 1 :(得分:0)

我删除了一些绒毛,并将CSS与HTML分离,并使用id应用样式(但类也可以正常工作)。
接下来,我将ACTIVE文本放在<div>中并单独设置样式 最后,我删除了所有rowspan因为它们似乎不需要而且弊大于利。

结果如下:

&#13;
&#13;
#divMain {
  background-color: white;
  border: 1px solid lightgrey;
  border-radius: 15px;
  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.4);
  height: 102px;
  margin-top: 25px;
  width: 500px;
}
#table {
  width: 100%;
  height: 95%;
  border-collapse: separate !important;
}
/* Row 1: */
#r1_c1 {
  text-align: center
}
#r1_c2 {
  text-align: left;
  padding: 5px 0 0 15px;
  font-size: 18px;
  font-weight: bold;
}
#r1_c3 {
  text-align: center;
  background-color: blue;
  -moz-border-radius: 0 15px 0 0;
  -webkit-border-radius: 0 15px 0 0;
  width: 150px;
  height: 20px;
  font-weight: bold;
}
/* Row 2: */
#r2_c1 {
  width: 125px;
}
#r2_c1 div {
  text-align: center;
  background-color: green;
  color: white;
  font-weight: bold;
}
#r2_c2 {
  text-align: left;
  padding: 0 0 0 15px;
}
#r2_c3 {
  width: 150px;
  text-align: center;
}
&#13;
<div id="divMain">
  <table id="table">
    <tr>
      <!-- Row 1: -->
      <td id="r1_c1">1</td>
      <td id="r1_c2">Title Here</td>
      <td id="r1_c3">Water</td>
    </tr>
    <tr>
      <!-- Row 2: -->
      <td id="r2_c1">
        <div>ACTIVE</div>
      </td>
      <td id="r2_c2">
        <div>Description goes here, this is now no problem anymore.</div>
      </td>
      <td id="r2_c3">
        <input type="button" value="Close" />
      </td>
    </tr>
  </table>
</div>
&#13;
&#13;
&#13;