响应式网站 - 高度始终为 100%
Responsive Website - Height Always 100%
我有一个响应式网站,正在尝试设置背景图片,以便高度始终为 100%。宽度并不重要,但图片底部的元素总是需要显示。不过,我的编码不太正确:
CSS:
body.cms-home .main-container {
margin-top: 20px;
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
height: 100%;
background-position: center;
width: auto;
HTML:
<div class="main-container">
</div>
我的网站是通过 Magneto 建立的,但我认为这与 CSS 没有什么不同。
我错过了什么?
更新:只是为了确认,因为似乎每个人都感到困惑。我希望我的背景图像始终为 100%(不能更短)。因此,如果浏览器变短,图像会按比例缩小,以确保始终显示图像的全高。所以我猜图像大小是由浏览器的高度决定的。
body.cms-home .main-container {
margin-top: 20px;
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
background-size: cover;
background-position: center;
}
尝试使用:background-size: cover;
您可以使用 vh
尺寸元素。它代表 viewport height
,大多数现代浏览器都支持它。将它应用于您的 .main-container
元素,以便它始终具有浏览器的完整高度和宽度 window.
body.cms-home .main-container {
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
height: 100vh;
width: 100%;
background-size: cover;
background-position: center;
}
请注意,如果您的页面可滚动,您可能还想给它一个 position: fixed
。
我有一个响应式网站,正在尝试设置背景图片,以便高度始终为 100%。宽度并不重要,但图片底部的元素总是需要显示。不过,我的编码不太正确:
CSS:
body.cms-home .main-container {
margin-top: 20px;
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
height: 100%;
background-position: center;
width: auto;
HTML:
<div class="main-container">
</div>
我的网站是通过 Magneto 建立的,但我认为这与 CSS 没有什么不同。
我错过了什么?
更新:只是为了确认,因为似乎每个人都感到困惑。我希望我的背景图像始终为 100%(不能更短)。因此,如果浏览器变短,图像会按比例缩小,以确保始终显示图像的全高。所以我猜图像大小是由浏览器的高度决定的。
body.cms-home .main-container {
margin-top: 20px;
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
background-size: cover;
background-position: center;
}
尝试使用:background-size: cover;
您可以使用 vh
尺寸元素。它代表 viewport height
,大多数现代浏览器都支持它。将它应用于您的 .main-container
元素,以便它始终具有浏览器的完整高度和宽度 window.
body.cms-home .main-container {
background-image: url("../images/landing.jpg");
background-repeat: no-repeat;
height: 100vh;
width: 100%;
background-size: cover;
background-position: center;
}
请注意,如果您的页面可滚动,您可能还想给它一个 position: fixed
。