2011-06-30 34 views
0

我正在動態創建一個表,並將一些預先格式化的文本從xml文件包含到它中,但我的表延伸以適合整個內容,而不是我想要固定表格大小,橫向滾動也可以,請提供一些解決方案。如何修復td或表的寬度,使其不會延伸

這裏是我的代碼

$('#detailTable').empty(); 
$('<div width="100%">') 
.attr('id','dblistSpan') 
.html('<div class="titleBlue">Configuration&gt;System&gt;DBList</div>'+ 
     '<table id="grid" style="border:#2F5882 1px solid;width:100%;overflow:hidden;" cellspacing="1" cellpadding="1">'+ 
      '<tr style="color :#FFFFFF;background-color: #8EA4BB">'+ 
       '<th><b>DBlist'+ 
       '</b></th>'+ 
      '<tr>'+ 
      '<tr style="color :#2F5882;background-color: #EDF1F5;width:100%;overflow:hidden;">'+ 
       '<td style="width:100%;overflow:hidden;"><pre>'+dblist+ 
       '</pre></td>'+ 
      '<tr>'+ 
     '</table>'+     
    '</div>')  
.appendTo('#detailTable'); 
+0

只需提供固定的寬度例如'width:500px;溢出:滾動;' –

+0

@Shadow Wizard:如果分辨率增加,它會保持嗎? – abi1964

+0

不,這是固定寬度的缺點......但您可以在這種情況下使用JavaScript並根據屏幕分辨率應用一次固定寬度。代碼非常簡單,讓我知道你是否想要。 –

回答

1

爲了讓內容固定寬度的,你必須固定寬度分配給<pre>標籤本身:

<pre style="width: 500px; overflow:scroll;">'+dblist+.... 

爲了使其相對於屏幕分辨率,首先計算所需的寬度,例如

var listWidth = parseInt(screen.width/5, 10); 

然後在代碼使用::屏幕寬度的1/5

<pre style="width:' + listWidth + 'px; overflow:scroll;">'+dblist+.... 

直播測試用例:http://jsfiddle.net/C2GGf/

+0

我會檢查它,並明天早上回到你的第一件事在我的辦公室:)謝謝 – abi1964

+0

我只想要一個水平滾動,內容應該顯示爲垂直。另外''10'''parseInt(screen.width/5,10)' – abi1964

+1

@Abhishek嘗試使用'overflow-x:scroll;'作爲'10'這是基礎 - 它意味着將整數解析爲普通數字 - 'parseInt(screen.width/5,16)'會給出十六進制格式的數字,例如(基數爲16) –