2012-12-06 48 views
1

我在表格单元格内有一个锚点元素。锚点需要重叠后续单元格,但不能在表格外部或包含div。使用CSS隐藏IE7中溢出的表格单元格内容

HTML

<div> 
    <table> 
    <tbody> 
     <tr> 
     <th><span>Volkswagen Crafter CR30 SWB Diesel 2.5 BlueTDI 88PS Van</span> BF60GKK <br>updated 06 dec 17:49</th> 
     <td>a</td> 
     <td>z</td> 
     <td>b</td> 
     <td>c</td> 
     <td>y</td> 
     <td>x</td> 
     <td><a style="width: 237.5%;left:37.5%" href="#"><span>John Smith, Provisional<br/>09:00 on 12 Dec<br/>18:00 on 14 Dec</span></a></td> 
     <td>g</td> 
     </tr> 
    </tbody> 
    </table> 
</div>​ 

CSS

div {overflow:hidden;display:inline-block;position:relative} 
th,td {border:1px solid black; border-collapse:collapse; position:relative; width:50px; } 
th {width:150px;} 
td.d {background-color:#cdc;} 
a {z-index:1000;position:absolute;width:300px;top:15px;left:5px;height:60px;overflow:hidden;background:#fdd;} 

这工作在Chrome,IE8和IE9 ...

Correct rendering in Chrome

但不是在IE7 ...

Incorrect rendering in IE7

我该如何在IE7中进行这项工作?

这里http://jsfiddle.net/UrZDw/

另请参见工作示例,IE7也使它们具有背景色细胞背后的锚。我怎样才能解决这个问题?

+0

试试这个http://code.google.com/p/ie7-js/ – raym0nd

+0

谢谢@ raym0nd - 似乎并没有解决它。 – matharden

回答

0
table { overflow: hidden; } 

然后你td旨意继承,所以你需要明确设置:

table td { overflow: visible; } 
+0

谢谢@wanovak,但不幸的是没有奏效。我在这里尝试过http://jsfiddle.net/UrZDw/1/ – matharden