2011-11-17 74 views
0

我有以下代碼,並期待TABLE會縮小瀏覽器窗口。但事實並非如此。爲什麼?爲什麼TABLE不遵守我的正確的CSS樣式?

<body> 
    <table style="position:fixed; left:50px; right:50px; bottom:50px; border:solid"> 
     <tr> 
      <td style="border:solid">Left cell</td> 
      <td style="border:solid">Right cell</td> 
     </tr> 
    </table> 
</body> 

UPDATE

,我甚至會被用CSS語言都感到失望,但顯然人們誰在說這是不可能同時適用於左,右的風格是錯誤的!

因此,對於DIV來說是可能的。

而且我發現下面的代碼工作得更好:

<table> 
    <tr style="position:fixed; left:50px; right:50px; bottom:50px; border:solid"> 
     <td style="border:solid; width:inherit">Left cell</td> 
     <td style="border:solid; width:inherit">Right cell</td> 
    </tr> 
</table> 

回答

1

你絕對可以同時適用rightleft屬性的元素。問題(我認爲)是表格是一種特殊情況 - 如果沒有明確指定寬度,它們只會伸展以適應內容的寬度。

你需要做的something like this,使用定位包裝div並同時設置widthtableheight填補。

+0

哇!我正在試驗DIV,並確實看到它更好地服從! – Dims

+0

可能是有辦法刪除奇怪的TABLE行爲? – Dims

+0

我不這麼認爲 - 你最好的選擇是接受包裝div,或者如果可能的話用一個div重新創建你的表格。 – CherryFlavourPez

1

可以設置leftright但不能同時!!!! 試試這個:

<body style="padding: 50px;margin:0;"> 
    <table style="border-style:solid;width:100%"> 
     <tr> 
      <td style="border-style:solid">Left cell</td> 
      <td style="border-style:solid">Right cell</td> 
     </tr> 
    </table> 
</body> 

例子:http://jsfiddle.net/R8aS8/

+0

哇!這僅用於TABLE還是用於DIV?那麼如何讓桌面與瀏覽器窗口有固定的距離呢? – Dims

+0

這是爲每個元素。 – noob

+0

我不能觸摸BODY,我應該只放置TABLE我需要的。用CSS可以嗎? – Dims

1

我想你想要的是把表中的容器與padding-left: 50pxpadding-right:50px並把桌上的寬度爲100%。你應該考慮把你的CSS放在一個單獨的文件中,因爲內聯CSS會變得混亂。

<html> 
    <head> 
    <style type="text/css"> 
     div.wrapper { padding: 0px 50px; } 
     table.fullwidth { width: 100%; border: 1px solid #333; } 
    </style> 
    </head> 
    <body> 
    <div class="wrapper"> 
     <table class="fullwidth"> 
     <tr> 
      <td >Left cell</td> 
      <td>Right cell</td> 
     </tr> 
     </table> 
    </div> 
    </body> 
</html> 
+0

這沒有工作。表格的大小成爲瀏覽器窗口的100%,根本不適合。 – Dims

+0

我認爲這是你想要的,因爲你將左右都設置爲'50px'。 – Russell

+0

我希望瀏覽器窗口右側和表格右側之間的距離是50px。 Ans也爲兩者的左側。 – Dims

相關問題