我建立在CSS標籤欄寬,並希望它能夠處理比可以在屏幕上顯示更多的標籤。我的HTML大致結構:CSS拆封的div比其父
<div id="tabbar">
<div id="tablist"></div>
</div>
CSS:
#tabbar {position:absolute;width:100%;height:24px;overflow:hidden;}
#tablist {position:absolute;top:0px;left:0px;height:24px;}
div.tab {float:left;}
與插入#tablist所有選項卡。只要沒有足夠的選項卡,它們不會溢出,#tablist會正確收縮,我可以獲得它們的集體寬度。但是,只要屏幕上顯示的內容超過了它們,就會換行到下一行(儘管由於#tabbar的overflow:hidden,你看不到它),並且#tablist的寬度不再準確地代表標籤的總寬度。
我可以通過JavaScript手動設置#Tablist中的寬度,增加每個選項卡的總寬度,但這似乎一個非常雜亂且容易出錯的方法。我也可以使用表格,但我寧可不要,因爲它違反了整個CSS佈局理論。
我在尋找,在本質上是什麼,是拆封圍繞其內容的DIV沒有它的內容被包裹到第二行由於div的父的寬度的方法。
編輯:這個的目的是建立一個標籤欄,允許用戶滾動時,有太多的選項卡,但爲了做到這一點,我需要知道何時寬度的#tablist,或總寬度所有制表符的寬度大於#tabbar的寬度,以便我可以激活'向右滾動'按鈕。我還需要知道確切的寬度,而不僅僅是寬度的事實,以便我知道應該能夠滾動多少。
對不起,我應該澄清一點。我正在尋找建立一個滾動標籤欄,但爲了知道何時激活'向右滾動'按鈕,我需要知道#tablist是否比#tabbar更寬,所以我不能設置一個人爲的高值# tablist的寬度。基本上,我需要知道所有選項卡的總寬度。 – wyatt 2010-09-02 02:27:08
嗯..不能認爲不包含Javascript ... – Marko 2010-09-02 03:11:14
不,我結束了使用JavaScript,找不到別的解決的。謝謝你給它一個鏡頭。 – wyatt 2010-09-02 09:04:44