网页技术交流
 
发新帖
楼主: 零五零八
查看: 1468|回复: 1

[使用教程] h5页面背景图很长要有滚动条滑动效果的实现

[复制链接]
零五零八 发表于 2021-5-13 19:23:19 | 显示全部楼层
最近做项目过程中,老大提了个很奇葩的要求
背景图铺满页面,他要求有滚动条可以滑动,他给我讲的思路是用js获取背景图片的高,在获取当前窗口的高,两者比较,当窗口的高小于背景图片的高,把窗口的高设置成背景颜色的高。反之就是窗口的高。 感觉太麻烦,用css就可以实现他的要求
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">      
  4. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  5. <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0">
  6. <meta name="apple-mobile-web-app-capable" content="yes">
  7. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  8. <meta name="format-detection" content="telephone=no">
  9. <title>长背景图测试/title>
  10. <style type="text/css">
  11.         //body里面的属性min-height是关键,网上说直接设置成100vh即可,如果不可以可以自己微调
  12.     body{
  13.         background:url(./images/download_bg.png) no-repeat;
  14.         background-size:100%;
  15.                 //方案1
  16.         min-height: 185vh;
  17.                 //方案2,本质等价于方案一,如果两个方案是同时开启,则会使用高度更小的那个,已测试
  18.                 //height:1200px;
  19.     }

  20.     #btn{
  21.         margin-top: 150px;
  22.         text-align: center;
  23.     }  
  24.      
  25. </style>
  26. <body>

  27. <div id="btn">
  28.     <a href=" http://www.cnblogs.com/fanbi">
  29.     <img src="./images/download_btn.png" width="90%" alt="跳转到某个网页地址"/></a>
  30. </div>   

  31. </body>
  32. </html>
复制代码

这是网上找的代码。我改动了下


  1. body{
  2.     background: -webkit-linear-gradient(to bottom , #699eef, #8e92ef);
  3.     background: -o-linear-gradient(to bottom , #699eef, #8e92ef);
  4.     background: -moz-linear-gradient(to bottom , #699eef, #8e92ef);
  5.     background: linear-gradient(to bottom , #699eef, #8e92ef);
  6.   
  7. }
  8. .app {
  9.     width: 100%;
  10.     /* height:900px; */
  11.     min-height: 120vh;
  12.     /* position: fixed; */
  13.     /* top: 0; */
  14.     /* left: 0; */
  15.     background: url('../../images/bg.jpg') no-repeat;
  16.     background-size: 100% auto;
  17.    
  18. }
复制代码

给body加了个跟图片颜色一样的背景色

解决问题。





a460367669 发表于 2023-8-4 12:16:40 | 显示全部楼层
快速回复 返回顶部 返回列表