我是靠谱客的博主 顺心期待,这篇文章主要介绍css 解决ios设备固定背景图的显示问题。background-attachment: fixed在iphone设备上失效;,现在分享给大家,希望可以做个参考。
设置背景图固定,滚动内容时背景图不滚动。在android上是没有问题的,但是ios上就是会被内容挤出去,滚动的时候背景图变形。通过background-attachment: fixed;和定位的方法实现或还是会出现图片变形,或者盒子被撑大。
iphone失效相关原因:固定背景导致重绘的成本很高,并且滚动表现也不尽人意,所以在一些移动端是被禁止的。
背景图如果直接写死是没有问题的,动态绑定添加的就有问题。
最终采用动态添加::before伪元素样式实现图片的固定布局。
效果图:
代码:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> html,body{ margin:0; padding:0; } .bg:before { content: ' '; position: fixed; z-index: -1; top: 0; right: 0; bottom: 0; left: 0; background-size: cover; } </style> </head> <body> <!-- <div class="bg"></div> --> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> <div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div><div>1212</div> </body> </html> <script src="./jquery.3.2.1.min.js"></script> <script> setTimeout(()=>{ $('.bg').append("<style>.bg:before{background-image: url(https://img0shdi28hu1.sunuping.com/upload/png/20221031142628/1586967823786594306.png);}</style>"); },500); </script>
最后
以上就是顺心期待最近收集整理的关于css 解决ios设备固定背景图的显示问题。background-attachment: fixed在iphone设备上失效;的全部内容,更多相关css内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复