【发布时间】:2013-03-08 00:48:54
【问题描述】:
真的为如何实现这一点而苦苦挣扎。
我想做一个导航栏,以页面为中心 960px。此导航栏中有 3 个不同的部分或列。最左边的最小,200px。中间的总是居中,总是 20px。最右边的最小为 300 像素,并与右侧对齐。在完整的 960 像素处,它看起来像这样:
在 740 像素时,它看起来像这样:
在 620 像素时,它看起来像这样:
在 520 像素时,它看起来像这样:
在这之后,它会进入一些替代设计,所以不用担心。 这样做的最佳方法是什么?
编辑:这就是我目前所拥有的。它在 960 像素处工作,但是当你调整它的大小时,中间的 div 不会停留在中心,因为有填充。当它变得太小时,它也会分崩离析,变成 2 行。
.left {
float: left;
width: 300px;
}
.right {
float: right;
width: 400px;
}
.middle {
width: 100%;
padding: 0 100px;
height: 39px;
}
【问题讨论】:
-
在我看来你也需要一个最大宽度,否则左右列与中间列之间可能永远不会有那个空白。
-
居中是什么意思?在 960px 和 740px 中,中间 div 居中,但在 520px 视图中,它偏向左侧。
-
在我看来,您希望左右列的宽度随着浏览器宽度的减小而增加,对吧?如果是这样,我认为这不能仅用 CSS 来完成。您可能需要 JavaScript。
-
@JoeyP 我添加了 620px,这是它可能会改变的地方——直到那时,中间的 div 居中。过了那个点,div 将与正确的 div 对齐。所以我想我只需要设计从 960 像素到 620 像素。过去这很容易
-
@JudeOsborn 不,它们看起来正在增长,因为图像已调整大小。如果您感到困惑,请在新标签页中打开图片。
标签: html css alignment multiple-columns