我試圖將非常寬的div
添加到現有的非固定大小的div
。這裏有一個小例子(jsfiddle):CSS:將寬元素裝入div而不會拉伸它
<html>
<head/>
<body>
<div style="float: right; border: 1px solid green;">
Some content
<div id="problematic-div" style="border: 1px solid red; overflow: auto;">
This_is_a_very_long_unbreakable_string_but_I_don't_want_it_to_have_the_ability_to_stretch_the_div<br/>
It_should_have_a_horizontal_scrollbar_instead
</div>
Some content here too
</div>
Main content goes here
</body>
</html>
什麼情況是,大內div
,使外div
拉伸以適應。我希望外部div不要調整大小(而是保持內部div
不存在的大小),而是讓內部div
顯示一個水平滾動條。
這是很容易做到的,如果有可能知道如何大外div
應該和限制內div的width
到這一點,但在這裏我想作外div
的尺寸標準是「 使用任何寬度將適合所有內部元素,除了寬內div
「。
爲了做到這一點,我的猜測是,內div
需要從外一個的大小忽略計算的寬度只有,不爲高,而這正是我不知道該怎麼辦。我試了幾件事情:
- 設置外
div
的position
到relative
,然後設置內部一個人的absolute
。這適用於外層div
不再由內層伸展,但水平滾動條沒有出現,其位置與外層div的左上角相距0,0,並且它重疊了一些外div的內容 - 使內
div
浮子,以及兩個clear: both
元件之間包裹它如下,仍然使外元件伸展:
。的width
<div style="clear: both;"></div>
<div id="problematic-div" style="border: 1px solid red; float: left; overflow: auto;">
This_is_a_very_long_unbreakable_string_but_I_don't_want_it_to_have_the_ability_to_stretch_the_div<br/>
It_should_have_a_horizontal_scrollbar_instead
</div>
<div style="clear: both;"></div>
Some content here too
- 一些Mozilla的供應商前綴(
min-content
,fit-content
,available
),但他們都不似乎有我想要
總之效果,我想太多的影響就像這個頁面上面列出的HTML代碼一樣,但是這個頁面通過在問題容器上設置一個固定的寬度來實現它。這樣的事情可能嗎?
你知道'溢出:hidden'和'溢出-X:hidden'我把它?如果沒有,請嘗試。 –
@David'overflow:hidden'在這裏不適用,因爲在容器上沒有設置特定的寬度,因此沒有溢出。 – chrisn
啊,當然。這就說得通了。我現在知道了。必須考慮那個...... –