2011-02-14 100 views
7

我有一个5列的表。最后一行应该有两个单元,间隔相等。Colspan跨越2.5列?

理想情况下,我想使用<td colspan="2.5"> - 最优雅的方法是什么?

该表有1边框,所以使用

<td colspan=2">abc</td> 
<td></td> 
<td colspan=2">def</td> 

长相丑陋

+1

如何其复杂的更改为div的底座设计,而不是表 – 2011-02-14 07:44:11

+0

+1一个有效点,虽然这只是一些小的日落是叫“表”给我,我仍然会重新考虑它。谢谢 – Mawg 2011-02-19 23:26:10

+0

为什么我不把它做成10列和双重一切?哦,哦! – Mawg 2017-11-05 17:58:17

回答

13

你真的需要下排两个表格单元格或仅仅两个街区是整行宽度的一半?如果是后者,那么你可以做一个<td colspan="5">的最后一行,将两个<div>,它出现,浮动一个向左,另一个向右,并给他们width:50%

<table> 
    <tbody> 
     <tr> 
      <td>1111</td> 
      <td>2222</td> 
      <td>3333</td> 
      <td>4444</td> 
      <td>5555</td> 
     </tr> 
     <tr> 
      <td colspan="5"> 
       <div class="first-half"> 
        half 
       </div> 
       <div class="second-half"> 
        half 
       </div> 
      </td> 
     </tr> 
    </tbody> 
</table> 

和一些CSS:

.first-half { 
    float: left; 
    width: 50%; 
} 
.second-half { 
    float: right; 
    width: 50%; 
} 

和平常的jsfiddle:http://jsfiddle.net/ambiguous/mmZEa/

如果你需要他们的表格单元格,那么你可能会增加一倍水平细胞的数目,使所有现有的<td colspan="2">,然后用<td colspan="5" width="50%">两个小区在最后一行:http://jsfiddle.net/ambiguous/JzrLK/

14

尝试是这样的

<table border="1"> 
    <tr> 
     <td>text</td> 
     <td>text</td> 
     <td colspan="2">text</td> 
     <td>text</td> 
     <td>text</td> 
    </tr> 
    <tr> 
     <td>text</td> 
     <td>text</td> 
     <td colspan="2">text</td> 
     <td>text</td> 
     <td>text</td> 
    </tr> 
    <tr> 
     <td>text</td> 
     <td>text</td> 
     <td colspan="2">text</td> 
     <td>text</td> 
     <td>text</td> 
    </tr> 
    <tr> 
     <td colspan="3">text</td> 
     <td colspan="3">text</td> 
    </tr> 
</table> 

在Chrome,火狐和IE 7-9效果不错。

见琴:https://jsfiddle.net/weyy601z/

+1

+1对于古老的桌子设计! :-)虽然这些东西变得相当难以理解,但它们仍然是... – 2011-02-14 08:29:47

2

这似乎很好地工作(在Chrome,IE和Firefox测试):

<table border="0" CELLPADDING="0" CELLSPACING="0"> 
<tr> 
    <td> 
     <table border="1" width="100%"> 
      <tr> 
       <td>abcsss</td> 
       <td>sdf</td> 
       <td>def</td> 
       <td>def</td> 
       <td>defsssss</td> 
      </tr> 
     </table> 
    <td> 
</tr> 
<tr> 
    <td> 
     <table border="1" width="100%"> 
      <tr> 
       <td width="50%">test</td> 
       <td width="50%">test</td> 
      </tr> 
     </table> 
    </td> 
</tr> 
</table>