CSS 右边固定宽度,左边流动,右边div在html中排在第一位。我如何避免崩溃

标签 css fluid-layout

我有一个可变宽度的左侧 div 和一个固定宽度的右侧 div。 花了一段时间才弄清楚如何进行这项工作,因为我正在为 jrox 站点设置主题,而 jrox 不会让我更改列的生成顺序。 HTML:

<div id="jroxHeader" class="jroxHeader"> </div>
<div id="jroxContent">
    <div id="jroxRightColumn" class="jroxRightColumn"> Places to go:
      <ul>
        <li>First Menu</li>
        <li>Second Menu</li>
        <li>Third Menu</li>
      </ul>
    </div>
    <div id="jroxMainContent" class="jroxSingleColumn">  
        Very little content.
    </div>
</div>

CSS:

.jroxSingleColumn{
  float: left;
  margin-right: 160px;
  padding:0 10px;
  background-color:#B6B6B4;
}
.jroxRightColumn{
  float: right;
  width: 160px; 
  margin-left: -160px; 
  background-color:#8E8E8C;
}
.jroxHeader{
   width: 100%;
   background-color:#7A7A78;
   height:150px;
}

正如您在 this fiddle 中看到的那样这看起来不错。它几乎完美地工作。直到我遇到 jroxSingleColumn 中内容很少的页面(如 this fiddle)时,我才注意到并发出问题。 .我需要 jroxSingleColumn 来填充 div 的剩余部分,我需要它是跨浏览器兼容的。我可以更改一些 HTML,但正确的列将始终在 HTML 中。

我几乎可以肯定这不是重复的。我读过很多许多类似的问题,但没有一个是相同的。

谢谢。

最佳答案

jroxSingleColumn 类中删除 float:left

将你的CSS改成这样:

.jroxSingleColumn{
  margin-right: 160px;
  padding:0 10px;
  background-color:#B6B6B4;
}

看这个fiddle

尽管我想建议,有更简洁的方法来实现您的最终结果。

关于CSS 右边固定宽度,左边流动,右边div在html中排在第一位。我如何避免崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17868969/

相关文章:

css - 具有三个背景图像的灵活宽度居中标题横幅?

html - 背景填充超过页面一半的等高列

css - 5 个流体 DIV 旁边的固定 DIV

html - 动态分隔子 div 以占据父 div 的整个宽度

css - Webix 切换按钮的自定义 CSS

html - 为什么在从 Docbook/Oxygen 生成的 html 文件中不显示斜体文本

html - 响应式类别图标应使用 HTML 和 CSS 覆盖所有可用的 DIV 区域

html - 如何使用 css 在用户定义的框中包含文本?

jquery - 当鼠标悬停在 YouTube 视频中时,我的 megamenu 在 IE9 中崩溃了

html - 如何修复 IE 的流体布局电子邮件?