2011-04-25 49 views
4

我有一個單行DIV與左側內容和右側:CSS兩列動寬度

--------------------------------------------------------------------------- 
|Single line of text       Icon and single line of text|             
--------------------------------------------------------------------------- 

如果沒有足夠的空間,我希望把它的需求,同時寬度正確的內容左邊的內容應該佔用可用寬度的其餘部分(溢出隱藏以保留單行)。

問題是,內容(左&正確)是動態的,所以我不知道它的寬度提前。

任何提示?由於

回答

2

給這個一掄:

http://jsfiddle.net/thirtydot/fjJMX/191/

CSS:

#lineContainer { 
    overflow: hidden; /* clear floats */ 
    outline: 1px solid red; 
    width: 300px /* just to make demo easier */ 
} 
#lineLeft { 
    overflow: hidden; /* hide extra text */ 
    white-space: nowrap; 
    background: #f0f 

} 
#lineRight { 
    float: right; 
    background: #ccc 
} 

HTML:

<div id="lineContainer"> 
    <div id="lineRight">right right right right right</div> 
    <div id="lineLeft">left left left</div> 
</div> 
+0

它完美。我曾假設浮動元素需要有一個確定的寬度。謝謝! – 2011-04-26 09:44:52

+0

在Firefox 37.0.2中不起作用... – Rikki 2015-05-02 13:40:58

+0

也許在該版本的Firefox中有一個錯誤?它現在適用於Firefox 40.0.2。 – thirtydot 2015-08-20 18:51:19

0

浮法只有科拉姆之一ns應該工作。

.left { 
    float: left; 
} 
.right { 
    overflow: hidden; 
    padding-left: 20px; 
} 

updated fiddle