2012-01-11 81 views
2

我在一個aspx頁面中有兩個gridviews,每個gridviews都有相似的數據。這是屏幕截圖。 Sample Picture如何在一個頁面中爲多個表應用相同樣式

網格中每列的寬度用%定義,並且對於兩個網格都是相同的。即使如此,輸出也不如預期,但列寬略有變化。我需要確保兩個網格列應該看起來相同。有沒有人知道如何解決這個問題(.net/javascript)。我在這裏先向您的幫助表示感謝。

+0

+1,截圖。而且因爲你的代表非常低。 – ApprenticeHacker 2012-01-11 13:04:04

+1

假設您關心的唯一風格是寬度問題,即使您明確設置了寬度,瀏覽器仍可能擴展列以適應內容。而且因爲它們是不同的表格,所以它會完全無損。我能想到的唯一的事情就是使用javascript來衡量你的表格,然後使用一些指標來計算出適合這兩個表格的合適的寬度集合。這可能會很棘手,但我不確定一個好的度量標準是什麼。 :( – Chris 2012-01-11 13:08:54

+0

請考慮選擇一個答案.. – dotNETbeginner 2012-02-27 07:25:10

回答

0

你可以使用CSS和類。例如上表中的行,你想保持相同的,你可以寫

<tr class="specialrow"> 

或某些細胞

<td class="specialcell"> 

你會寫這樣

.specialcell 
    { 
    width:100px; 
    } 

也許的jsfiddle的CSS會進一步幫助嗎?

+3

我討厭downvoters ...當然,得到答案的最好辦法是擴大答案。也許留下評論我的答案和錯誤,甚至編輯我的答案!Rant over。 – Undefined 2012-01-11 13:10:38

+0

downvote可能是因爲你沒有正確地經過這個問題..問題是關於列的寬度,你已經回答了顏色.. – dotNETbeginner 2012-01-11 13:30:15

+0

感謝提醒,至少我知道我能改變以提高答案:) – Undefined 2012-01-11 13:32:02

1

而建表單獨設置每個列的類,然後在CSS

<table style="width: 100%;"> 
    <tr> 
     <td class='firstCol'></td> 
     <td class='secCol'></td> 
     <td class='thrdCol'></td> 
    </tr> 
    <tr> 
     <td></td> 
     <td></td> 
     <td></td> 
    </tr> 
    <tr> 
     <td></td> 
     <td></td> 
     <td></td> 
    </tr> 
</table> 

和風格

<style type="text/css"> 
    .firstCol 
    { 
     width: 10%; 
     } 

    .secCol 
    { 
     width: 20%; 
     } 

    .thrdCol 
    { 
     width: 30%; 
     } 

</style> 
0

設置寬度的一種方式,以確保這兩個表是平等的是使用只有一張桌子。這不是最好的解決方案,但它可以完成工作。爲了將它們分開,您需要在它們之間放置一個<tr colspan="14"><td>&nbsp;</td></tr>

同樣,這不是最好的解決方案。如果從您的業務角度來看,這樣做是有道理的(表格顯示了關於同一事物的信息,並將其作爲一個整體來考慮),那麼您可以毫無顧慮地使用它。

反正...尋找一些信息,關於有在同一個表的幾個S和S使我這個答案,有一個關於如何做到這一點很多有用的信息:Multiple thead/tbody design

您可以嘗試使用css table-layout:fixed在這兩個表中,然後指定CSS中每列的寬度。

+0

我可能無法做到這一點,因爲彙總表應該是獨立的,因爲當用戶向下滾動頁面時,彙總表將堅持瀏覽器的頂部。出於這個原因,我認爲最好是一張桌子,而不是合併成一張桌子。 – Murty 2012-01-11 14:21:37

+0

好的。嘗試表格佈局:使用固定的列大小固定。它應該工作。 – ivowiblo 2012-01-11 14:36:38

相關問題