2014-07-16 71 views
0

我有一個固定的寬度<div>定位在身體內部float:right。當我調整窗口大小並且<div>的寬度低於窗口寬度時,不會出現滾動條。爲什麼當我的div在身體之外時沒有滾動條出現?

HTML

<body> 
    <div>Some text content inside.</div> 
</body> 

CSS

div{ 
    background : blue; 
    width  : 400px; 
    float  : right; 
} 

這是一樣的,如果我通過position:absolute; right:0;改變float:right

如果我加body{overflow:auto;}它仍然是一樣的。

我的問題是:爲什麼會這樣?以及如何更改它?

http://jsfiddle.net/Sk7Qh/

回答

4

你永遠不能比文件(或進一步上漲,則頂邊)的左邊緣進一步向左滾動。

但是,內容可以放在那裏。

這就是發生了什麼,你不能改變它。

最接近你可能會設置一個包含元素的最小寬度,以便內容永遠不會離開左邊或頂邊。

例如從OP評論後

body { 
    position: relative; 
    min-width: 300px; 
} 
+0

職位:親戚是多餘的。不是嗎? –

+0

@OrtomalaLokni - 不,它將身體建立爲絕對定位div的定位環境。 – Quentin

+0

對不起,我是在浮動:右案。 –

0

更新:

然後你只用在你的DIV

<div id="outside"> 
    <div id="inside"> 
     Text 
    </div> 
</div> 

和CSS外盒:

#outside { 
    max-width: 100%; 
    overflow-x: auto; 
    float: right; 
} 

#inside { 
    background:blue; 
    width: 300px; 
} 

http://jsfiddle.net/Sk7Qh/6/

更好?

+0

好的,但我的div必須有固定的寬度。所以沒有最大寬度是可能的。 –

+0

查看上面的更新 – Puzzled

相關問題