2012-02-27 75 views
5

我正在尋找一個優雅的方式來定位兩個div除了另一個之外沒有換行。第一個div是一個圖標,第二個是未知大小的文本。兩個div除了另一個之外沒有包裝

他們不應該分兩行,但如果沒有足夠的地方就隱藏。我試圖用這個example,但它不起作用。

還有一個類似的question,但它的大小是未知的情況不一樣。

幫助表示讚賞

回答

8

這樣寫:

.container { 
    white-space: nowrap; 
} 
.d1, 
.d2{ 
    display: inline-block; 
    *display:inline;/*for IE 7 */ 
    *zoom:1;/*for IE 7 */ 
    vertical-align:top; 
} 
.d1 {    
    background-color:#ff0; 
} 

.d2 { 
    background-color:red; 
} 

入住這http://jsfiddle.net/xcSXA/5/

2

我認爲,下面的CSS是,你需要什麼。

.container { 
    display:inline-block; 
    overflow:hidden; 
    white-space: nowrap; 
} 

.d1 { 
    display: inline-block; 
    background-color:#ff0; 
} 

.d2 { 
    white-space: nowrap; 
    display: inline-block; 
    background-color:red; 
} 
3

而是浮你的div的,它們顯示爲inline-block的,使他們不換行。另外,將容器的「空白」樣式設置爲「nowrap」以防止換行。

HTML

<div class="container"> 
    <div class="d1">icon</div> 
    <div class="d2">This can be very very very very large.</div> 
</div> 

CSS

.container { 
    white-space:nowrap; 
    overflow:hidden; 
    width: 100px; 
} 

.d1 { 
    display: inline-block; 
    background-color:#ff0; 
} 

.d2 { 
    display: inline-block; 
    background-color:red; 
} 

工作實施例:http://jsfiddle.net/C4Wfa/

1
1

.D1和.D2你得給一定的寬度,但是你必須確保.d1和.d2的寬度(+邊距和填充)不會大於容器類的大小,否則它們將無法被設置爲彼此相鄰。

相關問題