TD有一個DIV,我用jQuery的fadeOut函數刪除了它,但是當它完成時邊框也消失了。如何強制一個沒有內容的TD來渲染其邊框?
我想避免這種情況,有沒有什麼辦法以外加入了「& NBSP;」 (這會導致它變醜)?
編輯:我使用的Internet Explorer(6,7)
TD有一個DIV,我用jQuery的fadeOut函數刪除了它,但是當它完成時邊框也消失了。如何強制一個沒有內容的TD來渲染其邊框?
我想避免這種情況,有沒有什麼辦法以外加入了「& NBSP;」 (這會導致它變醜)?
編輯:我使用的Internet Explorer(6,7)
CSS:
table {
empty-cells: show;
}
你也需要把IE在標準渲染模式這個工作。添加文檔類型後,至少IE8(Beta 2和更高版本)播放很好。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
IE7及以下版本仍然不會這樣做。支持empty-cells
據說是「部分」(對於IE7和IE8 Beta 1),在the MS CSS compatibility statement。無論「部分」意味着什麼,不實施「表演」都不能稱之爲「部分支持」。這些瀏覽器可以強制通常倒塌表格邊框繪製單元格邊框:
table {
border-collapse: collapse;
}
的empty-cells
設置將被忽略。但是一旦你摺疊邊框,你不需要設置,因爲所有的瀏覽器都會顯示摺疊的邊框。
我結束了添加透明圖像1px的對小區的suggested by Jukka "Yucca" Korpela。現在,如果沒有更好的替代
取決於你要完成什麼,我會使用此解決方案,您可以設置的div visibility
-property到hidden
,而不是設置其display
-property到none
,即你必須恢復display
和和調用後手動設置opacity
visibility
。
添加非打破空間的細胞:
<td> </td>
一個黑客,但不是添加的圖像更好的破解。
< td style =「font-size:1pt」> & nbsp; <TD>
所以,如果你有一個表,如下圖所示:
<table border="1">
<tr>
<td>Breakfast</td>
<td><div id="foo">Lunch</div></td>
<td>Dinner</td></tr>
</table>
你淡出,使用jQuery,午餐,爲什麼不帶回來一個空白自認倒黴淡入?
象下面這樣:
$("#foo").fadeOut("slow").html('').fadeIn("fast");
@Juan:這是做了正確的方式,但它不能在IE – Christoph 2009-03-02 13:13:39
啊工作,但我使用的是IE 7 – juan 2009-03-02 13:13:58
唔...它適用於我。你確定空單元格屬性設置使它成爲你有問題的表嗎?也許它在某個地方被覆蓋了? – Tomalak 2009-03-02 13:14:36