css - 如何防止右div包裹到左div下面?

标签 css word-wrap

see fiddle here

当我从右到左逐渐调整窗口大小时:

  • 红色右框的宽度越来越小......好吧
  • 第二个绿色元素位于第一个绿色元素下方...好的
  • 红色右框和 2 个内部绿色元素位于蓝色左框下方...不行

我希望红色右侧框保留在那里,其余行为保持不变。

尝试了很多东西,比如block: inline-blockmin-widthwhite-space: nowrap,但没有任何效果。

请帮忙!

(谁能解释一下为什么红色盒子在右侧仍然有这么多空间的情况下会包裹起来?)

谢谢!!!

最佳答案

display: table 对于父级和 display: table-cell; 对于子级就是您所追求的。

Have a fiddle!

  1. 移除 .left.right 上的 float (将 float 保留在绿色方框上)
  2. display: table 添加到 .wrapper
  3. display: table-cell; 添加到 .left.right
  4. vertical-align:top; 添加到您的“表格单元格”,这样内容就不会垂直居中

CSS

html {
    width:100%;
    height:100%;
}
body {
    padding: 0px;
    margin: 0px;
    width:100%;
    height:100%;
}
.wrapper {
    width: 100%;
    height:100%;
    display: table;
}
.left {
    width: 25%;
    min-width:100px;
    height: 100%;
    margin:0px;
    border: 1px solid blue;
    display: table-cell;
    vertical-align:top;
}
.right {
    display: table-cell;
    vertical-align:top;
    width: 70%;
    height: 100%;
    border: 1px solid red;
}
.item {
    width:100px;
    height:100px;
    margin:20px;
    float: left;
    border:1px solid green;
}

关于css - 如何防止右div包裹到左div下面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24610446/

相关文章:

javascript - 用CSS和JS按时间间隔显示文本

html - 自动换行问题

css - 自动换行在 Internet Explorer 中不起作用

html - 使列的宽度固定并将单词换行到下一行

ruby - REXML 正在换行长行。我该如何关闭它?

html - CSS 转换在 Edge 中不起作用

javascript - CSS/JS 删除(自动)换行符/文本换行前的空格

javascript - 尝试向页面添加雪花,但它完全清除了我的 HTML,并且没有任何显示

html - "a"元素内部 "li"元素溢出 "li"元素

android - 如何找出 Android 上的 TextView 中文本换行的行数?