2

我正在尝试找到解决我在 iOS 设备上使用固定背景时遇到的问题的方法。我宁愿不必为这个网站重新设计所有东西,我希望一些 CSS 更改可以修复它。就是网站在 iPhone 上的样子,也是应该的样子。我使用的 CSS 代码如下:

.container {
    min-width: 320px;
    max-width: 480px;
    margin: 0 auto;
}

.fixed-background {
    height: 800px;
    -webkit-backgound-size: cover;
    -o-backgound-size: cover;
    -moz-backgound-size: cover;
    background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
    text-align: center;
    overflow: auto;
}

我也尝试过使用@mediastackoverflow上的一些帖子使用查询来修复iOS,但这似乎没有任何效果:

@media screen and (min-color-index:0) and (-webkit-min-device-pixel-ratio:0) {
    .fixed-background {
        background-attachment: scroll;
    }
} 

HTML

<div class="fixed-background bg-1">
    <div class="container">
        <div class="title">
            <h1>ROOK PROPERTY<br>MANAGEMENT INC.</h1>
            <h2>CONDOMINIUM MANAGEMENT</h2>
        </div>
    </div>
</div>
4

2 回答 2

5

我刚刚遇到了同样的问题,这就是我解决它的方法。

首先,你需要将你的 body 和 html 声明为 100% 宽和 100% 高:

html, body{
	width: 100%;
	height: 100%;
}

然后,页面上的滚动不能由正文完成:您必须将其包装在容器上。这个容器需要三个参数:overflow:scroll, width: 100% and height: 100%。我建议将整个网站包装在其中:

#wrapper{
		width: 100%;
		height: 100%;
		overflow: scroll;
	}

如果你不喜欢它的滚动方式,你也可以尝试添加 -webkit-overflow-scrolling: touch。

希望对您/任何来寻找这个的人有所帮助!

于 2017-07-18T06:42:23.497 回答
-2

在我所有具有固定背景的 div 中,我添加了类class="parallax iparaxify paraxify" 并且在我的主 css 文件中,我有:

.parallax {
width: 100%;
background url(../images/bg.jpg) no-repeat center center;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
} 

最后使它对除 i 产品之外的所有东西都产生视差

.paraxify {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

最后使用 jquery 停用position:fixedipad、iphone 和 ipod

// adds mobile class, and mobile os to html tag
jQuery(document).ready(function($){
var deviceAgent = navigator.userAgent.toLowerCase();

if (deviceAgent.match(/(iphone|ipod|ipad)/)) {
$('.iparaxify').removeClass('paraxify');
}
});
于 2017-10-12T00:41:04.040 回答