文章目录
- 01-体验vw和vh
- 02-vw适配
- 02-适配.html
- demo.less
- demo.css
- 03-vw和vh不能混用
- 03-vw和vh.html
- demo.less
- demo.css
- 04-综合案例-酷我
- demo.html
- demo.less
- base.less
- demo.css
- 酷我(标准版)
- index.html
- index.less
- index.css
01-体验vw和vh
<!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>*{padding: 0;margin: 0;}/* vw和vh是相对视口宽度计算结果,可以直接实现移动端适配效果(rem需要搭配js媒体查询使用) */.box{/* width: 50vw;height: 30vw;background-color: pink; */width: 50vh;height: 30vh;background-color: pink;}</style>
</head>
<body><div class="box"></div>
</body>
</html>
02-vw适配
02-适配.html
像素转vw、vh:px单位尺寸/ 1/100视口的宽度和高度
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./demo.css">
</head>
<body><div class="box"></div>
</body>
</html>
demo.less
.box{width: (68 / 3.75vw);height: (29 / 3.75vw);background-color: pink;
}
.box{width: (68 / 6.67vh);height: (29 / 6.67vh);background-color: pink;
}
demo.css
.box {width: 18.13333333vw;height: 7.73333333vw;background-color: pink;
}
.box {width: 10.19490255vh;height: 4.34782609vh;background-color: pink;
}
03-vw和vh不能混用
比例会改变
03-vw和vh.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./demo.css">
</head>
<body><div class="box"></div>
</body>
</html>
demo.less
.box{width: (68 / 3.75vw);height: (29 / 6.67vh);background-color: pink;
}
demo.css
.box {width: 18.13333333vw;height: 4.34782609vh;background-color: pink;
}
04-综合案例-酷我
demo.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><link rel="stylesheet" href="./css/demo.css"><link rel="stylesheet" href="./iconfont/iconfont.css">
</head>
<body><!-- 顶部固定区域 --><div class="top"><div class="left"><img src="./assets/logo.png" alt=""><h3>酷我音乐</h3><p>打开APP收藏下载</p></div><div class="right"><a href="#">下载APP</a></div></div><!-- 搜索区域 --><div class="search"><div><span class="iconfont icon-sousuo"></span><p>搜索你想听的歌曲</p></div></div><!-- 图片区域 --><div class="pic"><ul><li><a href="#"><img src="./assets/banner01.jpeg" alt=""></a></li><!-- <li><a href="#"><img src="./assets/banner02.jpeg" alt=""></a></li> --><!-- <li><a href="#"><img src="./assets/banner03.jpeg" alt=""></a></li> --><!-- <li><a href="#"><img src="./assets/banner01.jpeg" alt=""></a></li> --></ul></div><!-- 排行榜区域 --><div class="rank"><div class="head"><h2>酷我排行版</h2><a href="#">更多<span class="iconfont icon-right"></span></a></div><div class="body"><ul><li><a href="#"><img src="./assets/icon_rank_hot.png" alt=""></a><dl><dt class="dt"><a href="#">酷我热歌榜 <span class="iconfont icon-right"></span></a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt></dl></li><li><a href="#"><img src="./assets/icon_rank_new.png" alt=""></a><dl><dt class="dt"><a href="#">酷我热歌榜 <span class="iconfont icon-right"></span></a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt></dl></li><li><a href="#"><img src="./assets/icon_rank_rise.png" alt=""></a><dl><dt class="dt"><a href="#">酷我热歌榜 <span class="iconfont icon-right"></span></a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt><dt><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a></dt></dl></li></ul></div></div><!-- 推荐歌单区域 --><div class="recommend"><div class="head"><h2>推荐歌单</h2><a href="#">更多<span class="iconfont icon-right"></span></a></div><div class="body"><ul><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li><li><div class="img"><img src="./assets/song01.jpeg" alt=""><div>18.2W</div></div><span>合适的变化不大的驾驶舱内的就</span></li></ul></div></div><!-- 底部固定区域 --><div class="bottom"><a href="#"><img src="./assets/logo.png" alt=""><p>安装酷我音乐 发现更多好音乐</p><span class="iconfont icon-right"></span></a></div>
</body>
</html>
demo.less
// out:../css/demo.css
@import "./base.less";
@key:3.75vw;
body{background-color: #f9fafb;
}
.top{position: fixed;top: 0;left: 0;display: flex;width: 100%;height: (50 / @key);background-color: #fff;padding: 0 (15 / @key);.left{display: flex;flex: 1;height: (50 / @key);justify-content: left;align-items: center;img{margin-left: (15 /@key);margin-right: (5 / @key);width: (30 / @key);height: (30 / @key); }p{margin-left: (10 / @key);color: grey;font-size: (12 / @key);}}.right{// justify-content: right;display: flex; align-items: center; a{display: block;text-align: center;line-height: (30 / @key);width: (80 / @key);height: (30 / @key);background-color: #ffe31b;border-radius: 4vw;font-size: (14 / @key);}}}.search{margin-top: (50 / @key);width: 100%;height: (52 / @key);// background-color: pink;padding: (10 / @key) (10 / @key);div{display: flex;justify-content: center;align-items: center;width: (100%);height: 100%;background-color:#f2f4f5;border-radius: 4vw;color: #a1a4b3;font-size: (14 / @key);span{font-size: (16 / @key);}}
}.pic{width: 100%;ul{width: 100%; padding: 0 (15 / @key) 0 (15 / @key);display: flex;li{height: (108 / @key);img{width: (345 / @key);height: 100%;border-radius: 1vw;}margin-right:(15 / @key);}animation: move 1s steps(3) infinite;}
}
@keyframes move {from{background-position: 0 0;}to{background-position: (-(345 / @key)*3) 0;}
}
.rank{width: 100%;height: (420 / @key);// background-color: pink;padding: 0 (15 / @key);.head{display: flex;width: 100%;height: (50 / @key);align-items: center;a{margin-left: auto;color: #a1a4b3;}}.body{li{display: flex;img{width: (105/@key);height: (105/@key);margin-right: (20 / @key);border-radius: 2vw;}dl{display: block;text-align: left;width: (215 / @key);height: (105 / @key);.dt{height: (28/@key);font-size: 3.5vw;a{color: black;}}dt{height: (21/@key);font-size: 3.2vw;a{color: #a1a4b3;}}}}}
}.recommend{width: 100%;height: (360 / @key);// background-color: pink;padding: 0 (15 / @key);.head{display: flex;width: 100%;height: (50 / @key);align-items: center;a{margin-left: auto;color: #a1a4b3;;}}.body{ul{display: flex;flex-wrap: wrap;justify-content: space-between;li{width: (105/@key);height: (145 / @key);font-size: 3.7vw;margin-bottom: (10 / @key);.img{position: relative;width: (105/@key);height: (105/@key); img{width: 100%;height: 100%;border-radius: 2vw;}div{width: (70 / @key);height: (28 /@key);position: absolute;bottom: 0;left: 0;color: #fff;background-color: rgba(0,0,0,0.8);border-radius: 2vw;text-align: center;line-height: (28 /@key);;}}}}}
}.bottom{position: fixed;bottom: (45 / @key);left: (15 / @key);a{width: (345 / @key);height: (45 / @key);background-color:#fff;display: flex;align-items: center;border-radius: 10vw;padding: (20 / @key);img{width: (36 / @key); height: (36 / @key);margin-right: (10 / @key);}p{flex: 1;font-size: (14 / @key);// background-color: pink;}span{width: (32/@key);height: (32/@key);text-align: center;line-height: (32/@key);background-color: #f2f3f5;border-radius: 50%;}}
}
base.less
// out: false
*,
::after,
::before {box-sizing: border-box;
}body,
ul,
p,
h1,
h2,
h3,
h4,
h5,
h6 {padding: 0;margin: 0;
}body {font-family:-apple-system,BlinkMacSystemFont,PingFangSC-Regular,"PingFang SC","Microsoft YaHei","Helvetica Neue",Helvetica,Arial,sans-serif;font-size: 14px;color: #333;
}img {vertical-align: bottom;
}ul {list-style-type: none;
}a {color: #333;text-decoration: none;-webkit-tap-highlight-color: rgb(0 0 0 / 0%);
}
demo.css
*,
::after,
::before {box-sizing: border-box;
}
body,
ul,
p,
h1,
h2,
h3,
h4,
h5,
h6 {padding: 0;margin: 0;
}
body {font-family: -apple-system, BlinkMacSystemFont, PingFangSC-Regular, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;color: #333;
}
img {vertical-align: bottom;
}
ul {list-style-type: none;
}
a {color: #333;text-decoration: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {background-color: #f9fafb;
}
.top {position: fixed;top: 0;left: 0;display: flex;width: 100%;height: 13.33333333vw;background-color: #fff;padding: 0 4vw;
}
.top .left {display: flex;flex: 1;height: 13.33333333vw;justify-content: left;align-items: center;
}
.top .left img {margin-left: 4vw;margin-right: 1.33333333vw;width: 8vw;height: 8vw;
}
.top .left p {margin-left: 2.66666667vw;color: grey;font-size: 3.2vw;
}
.top .right {display: flex;align-items: center;
}
.top .right a {display: block;text-align: center;line-height: 8vw;width: 21.33333333vw;height: 8vw;background-color: #ffe31b;border-radius: 4vw;font-size: 3.73333333vw;
}
.search {margin-top: 13.33333333vw;width: 100%;height: 13.86666667vw;padding: 2.66666667vw 2.66666667vw;
}
.search div {display: flex;justify-content: center;align-items: center;width: 100%;height: 100%;background-color: #f2f4f5;border-radius: 4vw;color: #a1a4b3;font-size: 3.73333333vw;
}
.search div span {font-size: 4.26666667vw;
}
.pic {width: 100%;
}
.pic ul {width: 100%;padding: 0 4vw 0 4vw;display: flex;animation: move 1s steps(3) infinite;
}
.pic ul li {height: 28.8vw;margin-right: 4vw;
}
.pic ul li img {width: 92vw;height: 100%;border-radius: 1vw;
}
@keyframes move {from {background-position: 0 0;}to {background-position: -276vw 0;}
}
.rank {width: 100%;height: 112vw;padding: 0 4vw;
}
.rank .head {display: flex;width: 100%;height: 13.33333333vw;align-items: center;
}
.rank .head a {margin-left: auto;color: #a1a4b3;
}
.rank .body li {display: flex;
}
.rank .body li img {width: 28vw;height: 28vw;margin-right: 5.33333333vw;border-radius: 2vw;
}
.rank .body li dl {display: block;text-align: left;width: 57.33333333vw;height: 28vw;
}
.rank .body li dl .dt {height: 7.46666667vw;font-size: 3.5vw;
}
.rank .body li dl .dt a {color: black;
}
.rank .body li dl dt {height: 5.6vw;font-size: 3.2vw;
}
.rank .body li dl dt a {color: #a1a4b3;
}
.recommend {width: 100%;height: 96vw;padding: 0 4vw;
}
.recommend .head {display: flex;width: 100%;height: 13.33333333vw;align-items: center;
}
.recommend .head a {margin-left: auto;color: #a1a4b3;
}
.recommend .body ul {display: flex;flex-wrap: wrap;justify-content: space-between;
}
.recommend .body ul li {width: 28vw;height: 38.66666667vw;font-size: 3.7vw;margin-bottom: 2.66666667vw;
}
.recommend .body ul li .img {position: relative;width: 28vw;height: 28vw;
}
.recommend .body ul li .img img {width: 100%;height: 100%;border-radius: 2vw;
}
.recommend .body ul li .img div {width: 18.66666667vw;height: 7.46666667vw;position: absolute;bottom: 0;left: 0;color: #fff;background-color: rgba(0, 0, 0, 0.8);border-radius: 2vw;text-align: center;line-height: 7.46666667vw;
}
.bottom {position: fixed;bottom: 12vw;left: 4vw;
}
.bottom a {width: 92vw;height: 12vw;background-color: #fff;display: flex;align-items: center;border-radius: 10vw;padding: 5.33333333vw;
}
.bottom a img {width: 9.6vw;height: 9.6vw;margin-right: 2.66666667vw;
}
.bottom a p {flex: 1;font-size: 3.73333333vw;
}
.bottom a span {width: 8.53333333vw;height: 8.53333333vw;text-align: center;line-height: 8.53333333vw;background-color: #f2f3f5;border-radius: 50%;
}
酷我(标准版)
index.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>酷我音乐</title><link rel="stylesheet" href="./iconfont/iconfont.css"><link rel="stylesheet" href="./css/index.css">
</head>
<body><!-- 头部 --><header><div class="left"></div><a href="#">下载APP</a></header><!-- 搜索 --><div class="search"><div class="txt"><span class="iconfont icon-sousuo"></span><span>搜索你想听的歌曲</span></div></div><!-- banner --><div class="banner"><ul><li><a href="#"><img src="./assets/banner01.jpeg" alt=""></a></li></ul></div><!-- 排行榜 --><div class="list"><!-- 标题 --><div class="title"><h4>酷我排行榜</h4><a href="#">更多<span class="iconfont icon-right"></span></a></div><!-- 内容 --><div class="content"><ul><li><div class="pic"><img src="./assets/icon_rank_hot.png" alt=""></div><div class="txt"><a href="#" class="more">酷我热歌榜<span class="iconfont icon-right"></span></a><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a><a href="#">2.就让这大雨全都落下 - 容祖儿</a><a href="#">3.缺氧 - 轩姨(相信光)</a></div></li><li><div class="pic"><img src="./assets/icon_rank_new.png" alt=""></div><div class="txt"><a href="#" class="more">酷我新歌榜<span class="iconfont icon-right"></span></a><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a><a href="#">2.就让这大雨全都落下 - 容祖儿</a><a href="#">3.缺氧 - 轩姨(相信光)</a></div></li><li><div class="pic"><img src="./assets/icon_rank_rise.png" alt=""></div><div class="txt"><a href="#" class="more">酷我飙升榜<span class="iconfont icon-right"></span></a><a href="#">1.樱花树下的约定(完整版) - 旺仔小乔</a><a href="#">2.就让这大雨全都落下 - 容祖儿</a><a href="#">3.缺氧 - 轩姨(相信光)</a></div></li></ul></div></div><!-- 推荐歌单 --><div class="recommend"><!-- 标题 --><div class="title"><h4>推荐歌单</h4><a href="#">更多<span class="iconfont icon-right"></span></a></div><!-- 内容 --><div class="content"><ul><li><div class="pic"><img src="./assets/song01.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li><li><div class="pic"><img src="./assets/song02.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li><li><div class="pic"><img src="./assets/song03.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li><li><div class="pic"><img src="./assets/song02.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li><li><div class="pic"><img src="./assets/song03.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li><li><div class="pic"><img src="./assets/song01.jpeg" alt=""><div class="cover">18.2W</div></div><div class="txt">抖音嗨爆DJ!劲爆旋律萦绕双耳</div></li></ul></div></div><!-- 安装,下载 --><div class="download"><img src="./assets/logo.png" alt=""><p>安装酷我音乐 发现更多好音乐</p><span class="iconfont icon-right"></span></div>
</body>
</html>
index.less
// out: ../css/@import "./base";body {background-color: #f9fafb;
}@vw:3.75vw;// 头部
header {position: fixed;left: 0;top: 0;display: flex;justify-content: space-between;align-items: center;padding: 0 (15 / @vw);// 固定定位的盒子,宽度靠内容撑开,希望宽度100%width: 100%;height: (50 / @vw);background-color: #fff;// 左边.left {width: (235 / @vw);height: (50 / @vw);background-image: url(../assets/head.png);background-size: contain;background-repeat: no-repeat;}a {width: (80 / @vw);height: (30 / @vw);background-color: #ffe31b;border-radius: (15 / @vw);text-align: center;line-height: (30 / @vw);font-size: (14 / @vw);}
}// 搜索
.search {// 头部固定定位,脱标不占位,搜索去最顶了,加上外边距挤下来即可margin-top: (50 / @vw);padding: (10 / @vw) (15 / @vw);height: (52 / @vw);// background-color: pink;.txt {height: (32 / @vw);background-color: #f2f4f5;border-radius: (16 / @vw);text-align: center;line-height: (32 / @vw);color: #a1a4b3;font-size: (14 / @vw);.iconfont {font-size: (16 / @vw);}}
}// banner
.banner {padding: 0 (15 / @vw);height: (108 / @vw);// background-color: pink;ul {li {width: (345 / @vw);height: (108 / @vw);img {width: 100%;height: 100%;// cover完全覆盖// 缩放img,图片比例跟父级盒子比例不同,避免图片挤压变形object-fit: cover;border-radius: (5 / @vw);}}}
}// 排行榜
.list {margin-top: (20 / @vw);padding: 0 (15 / @vw);li {display: flex;margin-bottom: (16 / @vw);height: (105 / @vw);background-color: #fff;border-radius: (10 / @vw);.pic {margin-right: (20 / @vw);img {width: (105 / @vw);height: (105 / @vw);border-radius: (10 / @vw);}}.txt {a {display: block;font-size: (12 / @vw);color: #a1a4b3;line-height: 1.8;}.more {font-size: (14 / @vw);color: #333;.iconfont {font-size: (16 / @vw);}}}}
}// 标题 → 公共样式
.title {display: flex;justify-content: space-between;margin-bottom: (16 / @vw);line-height: (25 / @vw);h4 {font-size: (20 / @vw);}a {font-size: (12 / @vw);color: #a1a4b3;}
}// 推荐歌单
.recommend {padding: 0 (15 / @vw);ul {display: flex;flex-wrap: wrap;justify-content: space-between;li {margin-bottom: (16 / @vw);width: (105 / @vw);height: (143 / @vw);// background-color: pink;// 图片.pic {position: relative;width: (105 / @vw);height: (105 / @vw);img {width: 100%;height: 100%;object-fit: cover;border-radius: (10 / @vw);}.cover {position: absolute;left: 0;bottom: 0;width: (70 / @vw);height: (28 / @vw);background-color: rgba(0,0,0,0.8);border-radius: 0 (10 / @vw) 0 (10 / @vw);text-align: center;line-height: (28 / @vw);color: #fff;font-size: (14 / @vw);}}// 文字.txt {font-size: (14 / @vw);}}}
}// 下载
.download {position: fixed;left: (15 / @vw);bottom: (30 / @vw);display: flex;align-items: center;padding: 0 (10 / @vw) 0 (15 / @vw);width: (345 / @vw);height: (45 / @vw);background-color: #fff;border-radius: (22 / @vw);img {margin-right: (10 / @vw);width: (36 / @vw);height: (36 / @vw);}p {flex: 1;font-size: (14 / @vw);}span {width: (32 / @vw);height: (32 / @vw);background-color: #f2f3f5;border-radius: 50%;text-align: center;line-height: (32 / @vw);font-size: (16 / @vw);}
}
index.css
*,
::after,
::before {box-sizing: border-box;
}
body,
ul,
p,
h1,
h2,
h3,
h4,
h5,
h6 {padding: 0;margin: 0;
}
body {font-family: -apple-system, BlinkMacSystemFont, PingFangSC-Regular, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;font-size: 14px;color: #333;
}
img {vertical-align: bottom;
}
ul {list-style-type: none;
}
a {color: #333;text-decoration: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {background-color: #f9fafb;
}
header {position: fixed;left: 0;top: 0;display: flex;justify-content: space-between;align-items: center;padding: 0 4vw;width: 100%;height: 13.33333333vw;background-color: #fff;
}
header .left {width: 62.66666667vw;height: 13.33333333vw;background-image: url(../assets/head.png);background-size: contain;background-repeat: no-repeat;
}
header a {width: 21.33333333vw;height: 8vw;background-color: #ffe31b;border-radius: 4vw;text-align: center;line-height: 8vw;font-size: 3.73333333vw;
}
.search {margin-top: 13.33333333vw;padding: 2.66666667vw 4vw;height: 13.86666667vw;
}
.search .txt {height: 8.53333333vw;background-color: #f2f4f5;border-radius: 4.26666667vw;text-align: center;line-height: 8.53333333vw;color: #a1a4b3;font-size: 3.73333333vw;
}
.search .txt .iconfont {font-size: 4.26666667vw;
}
.banner {padding: 0 4vw;height: 28.8vw;
}
.banner ul li {width: 92vw;height: 28.8vw;
}
.banner ul li img {width: 100%;height: 100%;object-fit: cover;border-radius: 1.33333333vw;
}
.list {margin-top: 5.33333333vw;padding: 0 4vw;
}
.list li {display: flex;margin-bottom: 4.26666667vw;height: 28vw;background-color: #fff;border-radius: 2.66666667vw;
}
.list li .pic {margin-right: 5.33333333vw;
}
.list li .pic img {width: 28vw;height: 28vw;border-radius: 2.66666667vw;
}
.list li .txt a {display: block;font-size: 3.2vw;color: #a1a4b3;line-height: 1.8;
}
.list li .txt .more {font-size: 3.73333333vw;color: #333;
}
.list li .txt .more .iconfont {font-size: 4.26666667vw;
}
.title {display: flex;justify-content: space-between;margin-bottom: 4.26666667vw;line-height: 6.66666667vw;
}
.title h4 {font-size: 5.33333333vw;
}
.title a {font-size: 3.2vw;color: #a1a4b3;
}
.recommend {padding: 0 4vw;
}
.recommend ul {display: flex;flex-wrap: wrap;justify-content: space-between;
}
.recommend ul li {margin-bottom: 4.26666667vw;width: 28vw;height: 38.13333333vw;
}
.recommend ul li .pic {position: relative;width: 28vw;height: 28vw;
}
.recommend ul li .pic img {width: 100%;height: 100%;object-fit: cover;border-radius: 2.66666667vw;
}
.recommend ul li .pic .cover {position: absolute;left: 0;bottom: 0;width: 18.66666667vw;height: 7.46666667vw;background-color: rgba(0, 0, 0, 0.8);border-radius: 0 2.66666667vw 0 2.66666667vw;text-align: center;line-height: 7.46666667vw;color: #fff;font-size: 3.73333333vw;
}
.recommend ul li .txt {font-size: 3.73333333vw;
}
.download {position: fixed;left: 4vw;bottom: 8vw;display: flex;align-items: center;padding: 0 2.66666667vw 0 4vw;width: 92vw;height: 12vw;background-color: #fff;border-radius: 5.86666667vw;
}
.download img {margin-right: 2.66666667vw;width: 9.6vw;height: 9.6vw;
}
.download p {flex: 1;font-size: 3.73333333vw;
}
.download span {width: 8.53333333vw;height: 8.53333333vw;background-color: #f2f3f5;border-radius: 50%;text-align: center;line-height: 8.53333333vw;font-size: 4.26666667vw;
}