我正在尝试向div现有的非固定大小添加一个非常宽的div. 这是一个最小的示例(jsfiddle):
<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元素之间,如下所示,这仍然会导致外部元素拉伸: 
.
<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
width(min-content,fit-content, )的一些 Mozilla 供应商前缀available,但它们似乎都没有我想要的效果
简而言之,我想要一个很像上面这个页面上的 HTML 代码列表的效果,但是这个页面通过在问题容器上设置一个固定的宽度来实现它。这样的事情可能吗?