2013-02-15 78 views
3

問題: 我想在同一行中包含2個浮動div。正確的div可以是固定的寬度。左div應該取所有的空格,並在裏面包裝文字。父容器寬度是可變的,所以我不能在兩個div上設置寬度。CSS - 同一行中有兩個浮動div,一個包裹文本

http://jsfiddle.net/af6wP/

div{border: 1px solid black} 
.left{float: left} 
.right{float: right} 
<div class="left"> 
    very long text very long text very long text very long text very long text very long text very long text very long text very long text very long text very long text 
</div> 

<div class="right"> 
    short text 
</div> 

回答

10

看起來像你只需要一個浮動的位置:

div{border: 1px solid black} 
.left{ overflow: hidden; } 
.right{float: right} 

http://jsfiddle.net/KmPjL/

+0

如果兩欄都有很多文字,這將不起作用:http://jsfiddle.net/KmPjL/1/ – Pete 2013-02-15 11:17:59

+0

他提到的右欄可以有固定的寬度。 – 2013-02-15 11:19:31

+0

並且不能在固定的容器上工作 – soyuka 2013-02-15 11:19:41

0

編輯

上得到了一個固定的寬度更好的解決方案正確的div:

的Html

<div class="left"> 
    <div class="right"> 
     short text 
    </div> 
    very long text very long text very long text very long text very long text very long text very long text very long text very long text very long text very long text 

</div> 

的CSS

div{border: 1px solid black;} 
.right{float:right;width:24%;} 

See updated fiddle

有了正確的容器上的長文,你將不得不使用一個clearfix