html - 奇数空白 : pre behavior inside floated parent

标签 html css responsive-design

我有一个简单的响应式 2 列设计,左边的列有 pre 和一个嵌套的 code 元素。

code 元素有 overflow: auto 设置,所以当它的内容超过指定的宽度时,它应该在里面显示一个水平滚动条而不换行。

这工作正常,但只有当父级(即左列)不 float 时才有效。 IE。当窗口狭窄时。可以自己试试here .

@media (min-width: 300px) {
    .left {
        float: left;
        margin-right: 100px;
        max-width: 400px;
    }

    .right {
        float: right;
        margin-left: -100px;
        width: 100px;
    }
}

pre {
    overflow: auto;
    word-wrap: normal;
    white-space: pre;
}

code {
    overflow: auto;
}

这很奇怪,因为我希望代码元素具有动态宽度,就像它在窗口较窄时那样,但是当父元素 float 时由于某种原因它获得了固定宽度。

我是不是做错了什么?这是应该发生的吗?

请注意,我不是在寻找 JS 解决方法,这是非常简单的 html/css,应该开箱即用。

最佳答案

根据更新后的 Fiddle,您为相关元素提供了 400px 的 max-width 以展开。当其中有一长行文本时,它可能会占据整个宽度。基本上,这只是您的设计对其内容做出响应。右边的列完全按照它应该的样子下降到它下面,如果你将容器的大小调整得更小,pre block 开始随之缩小。

要了解我的意思,请右键单击该元素并选择 Inspect Element 以查看其计算出的宽度。另外,如果你考虑一下,它必须是 400px(或者任何最大宽度)。否则,它还没有达到其溢出点来获取您正在测试的滚动条!

关于html - 奇数空白 : pre behavior inside floated parent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22434667/

相关文章:

html - 如何自动调整中间div宽度?

css - :hover and spans 的 HTML/CSS 问题

javascript - 响应式 jQuery 菜单

css - 溢出 : visible not working

java - 检索 Intranet 上文件夹的完整路径

javascript - 在 Canvas HTML getSeconds() 中,有没有办法让时钟运行 56 秒 56 分 28 小时?

html - 如何让一个DIV框填满网页而不往左走?

响应式网页设计在断点处的 jquery 窗口大小调整问题

javascript - 实时预览与代码扩展

Javascript slider [rcarousel] - 如何在一个网站上使用多个 slider ?