我正在建立一个我正在使用视差背景的网站。它在我的Mac上的Safari和Chrome中运行得很好,但背景大小:封面在移动设备上根本不起作用。 图片被放大,视差功能被禁用。
我一直在寻找一个简单的解决方案,但无法在任何地方找到它。 只要背景图片尺寸合适,我就会很高兴失去移动设备上的视差功能。
帮助? 附上基本代码。
HTML:
<body>
<div id="bg01" class="bg01">
</div>
<div class="divwrapper">
<div class="div" id="div">
CONTENT
</div>
</div>
<div id="bg02" class="bg02">
</div>
</body>
CSS:
body, html {
height: 100%;
margin: 0;
padding: 0;
font-size: 0;
background-color: red;
}
.divwrapper {
display: table;
width: 80%;
margin:auto;
font-size: 12px;
line-height: 150%;
text-align: center;
}
.div {
height:300px;
}
.bg01 {
background-image: url("https://s-media-cache-ak0.pinimg.com/originals/52/cc/af/52ccaf818ddc056e12e522b9395dd87d.jpg");
height: 100%;
width: 100%;
background-attachment: fixed;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
}
.bg02 {
background-image: url("http://blog.hostbaby.com/backgrounds/bg_lightwoodfloor.jpg");
height: 100%;
width: 100%;
background-attachment: fixed;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
}
EDIT / UPDATE
我尝试过不同的媒体查询,至少在div背景图像上通过将它们更改为较小的图像来获得正确的比例,但这根本不起作用(它仍然使用大的,放大):
@media (max-width: 600px) {
.bg01 {
background-image: url("../images/bg_small.jpg");
background-size: 20% 20%;
background-repeat: repeat;
}
}
我也试过了最小宽度和最大宽度。
答案 0 :(得分:1)
我通常使用&#34;封面清单&#34;这里介绍: https://css-tricks.com/perfect-full-page-background-image/ 但如果您需要查看整个图像,这不是一个很好的用法
尝试Keith Clark的解决方案:我尝试使用移动工具,它运行良好。只需用图像替换背景。 http://keithclark.co.uk/articles/pure-css-parallax-websites/
<强> HTML 强>
<div class="parallax">
<div id="group1" class="parallax__group">
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
</div>
<div id="group2" class="parallax__group">
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
<div class="parallax__layer parallax__layer--back">
<div class="title">Background Layer</div>
</div>
</div>
<div id="group3" class="parallax__group">
<div class="parallax__layer parallax__layer--fore">
<div class="title">Foreground Layer</div>
</div>
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
</div>
<div id="group4" class="parallax__group">
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
<div class="parallax__layer parallax__layer--back">
<div class="title">Background Layer</div>
</div>
<div class="parallax__layer parallax__layer--deep">
<div class="title">Deep Background Layer</div>
</div>
</div>
<div id="group5" class="parallax__group">
<div class="parallax__layer parallax__layer--fore">
<div class="title">Foreground Layer</div>
</div>
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
</div>
<div id="group6" class="parallax__group">
<div class="parallax__layer parallax__layer--back">
<div class="title">Background Layer</div>
</div>
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
</div>
<div id="group7" class="parallax__group">
<div class="parallax__layer parallax__layer--base">
<div class="title">Base Layer</div>
</div>
</div>