【发布时间】:2018-05-10 00:14:49
【问题描述】:
通常我很擅长 CSS,但我不知道如何做这个特定的布局。
我有一个最大宽度为 1,400 像素的容器。左右边距设置为auto,因此当视口高于 1,400 像素时,容器居中。
然后我在容器外有一个图像,旁边有一个 div,图像占据了 40% 的视口,div 占据了剩余的 60% 的视口。
我想要的是 60% 部分内的 div,它不会比上面 1,400 像素容器的右侧边缘更宽。
图表可能会让事情更清楚:
到目前为止我的 CSS:
div.container {
max-width: 1400px;
margin: 0 auto;
}
img {
display: inline-block;
width: 40%;
}
div.right {
display: inline-block;
width: 60%;
}
div.inner {
???
}
对于div.inner,我尝试了百分比和calc 的变化,但无济于事。为了澄清起见,布局上的所有内容都很好,除了我无法与红色框的右侧边缘对齐的粉红色框。
【问题讨论】:
-
margin-right: calc( ( 100vw - 1400px ) / 2 ); ?请注意, vw 包含滚动条,这可能会让您有些失望。
-
我刚才问了一个非常相似的问题 - stackoverflow.com/questions/47349180/… - 你可能会发现我接受的答案很有用。请注意
width: 100vw- 出于某种原因,我不明白它包括垂直滚动条的宽度。 -
如果要保持为宽度:width: calc(60vw - ((100vw - 1400px) / 2));