2011-12-26 115 views
1

這是我將兩個表附加到DIV的jQuery代碼。如何避免動態插入兩行之間的新行

var str = "<table><tr><td>Hello</td></tr></table>"; 
$('body').append(str+str); 

但是默認情況下,這兩個表格會進入兩行。
例如電流輸出

Hello 
Hello 

但我想這樣

Hello Hello 

感謝

+0

+1讓我撓我的腦袋 – 2011-12-26 06:27:07

回答

2
var str = "<table style='display:inline-block; *display: inline; _height: 30px;'><tr> <td>Hello</td></tr></table>"; 

$('body').append(str+' '+str); 

在IE7,8,9,Chrome瀏覽器,Firefox的測試。 IE黑客從here

+0

非常感謝:-) – Exception 2011-12-26 08:23:27

1

<table>元件是藉由缺省塊的元素,所以(像,例如,<div><p>,以及很多),他們將開始在默認情況下一個新行。

<table style="display: inline-block"> 

或者,更好,在樣式表:你可以用CSS設置display: table-celldisplay: inline-block改變這種

table { 
    display: inline-block; 
} 

注意,此行爲無關,與是否使用jQuery添加元素,但你也可以設置樣式使用jQuery:

$("table").css({display: "inline-block"}); 

演示:http://jsfiddle.net/hbCyK/1/

+0

哪個瀏覽器能在這方面工作?不在Chrome中。順便說一句,不內聯默認值? – 2011-12-26 06:02:00

+0

我知道你已經變成了現在的我。好的 – 2011-12-26 06:04:44

+0

再次變更。但內聯塊在IE6和IE7中的實現不完整。見http://www.quirksmode.org/css/display.html – 2011-12-26 06:08:30