我有一个包含三个主要 div 的绝对定位布局:标题、左侧选项列和内容列。设计的行为是让标题和左侧选项列始终留在页面上,而内容列能够自由上下滚动(想象左侧的控制面板和顶部的标题栏)。
问题是内容 div 中的窗口大小调整和左右(x 轴)溢出。我想要的行为是最小宽度约为 1000 像素,此时水平滚动条会显示在内容列中并允许用户滚动。这可以防止窗口被调整得太小,以至于我的布局不再像预期的那样。
我曾尝试在现有 CSS 中使用 min-width 指令,但无济于事。min-width 确实实现了我正在寻找的“截止”,但是,没有水平滚动条出现,我无法水平滚动。
有没有办法使用现有的范例来做到这一点,或者样式表是否需要以不同的方式完成?以下是我现有的实现(使用我一直在测试 content_column 的 min-width 属性):
html {
overflow: hidden;
}
body {
margin: 0px;
padding: 0px;
background: #E5E5E5;
color: #000000;
font-family: 'Open Sans', sans-serif;
height: 100%;
max-height: 100%;
overflow: hidden;
border: 0px none;
}
#header {
position: absolute;
margin: 0px;
top: 0px;
left: 0px;
display: block;
color: #FFFFFF;
background: #146647;
font-size: 1.5em;
padding: 5px;
width: 100%;
overflow: hidden;
z-index: 3;
}
#option_column {
position: absolute;
left: 0px;
top: 40px;
bottom: 0;
background: #0F4C35;
color: #FFFFFF;
width: 155px;
padding: 3px;
z-index: 2;
overflow: auto;
}
#content_column {
position: absolute;
overflow: auto;
min-width: 1000px;
z-index: 1;
top: 40px;
left: 161px;
right: 0px;
bottom: 0px;
padding: 3px;
background: #E5E5E5;
color: #000000;
font-size: 14px;
}
这是我的 HTML 结构:
<body>
<div id="header">
Head
</div>
<div id="option_column">
Option Column
</div>
<div id="content_column">
<div class="header_text">Content Header</div>
<div id="subheader">
Content (content_column intended to stop resizing at 1000px)
</div>
</div>
</body>