首页 > 课堂 > 小程序 > 正文

微信小程序MUI导航栏透明渐变功能示例(通过改变rgba的a值实现)

2020-03-21 16:02:22
字体:
来源:转载
供稿:网友

本文实例讲述了微信小程序MUI导航栏透明渐变功能。分享给大家供大家参考,具体如下:

导航栏透明渐变效果

微信小程序,MUI,导航栏,透明渐变

实现原理

1. 给page-group设置的背景颜色采用rgba;

2. 通过改变rgba其中a的值来实现透明渐变。

WXML

<view style="height:100%;position:fixed;width:100%;"> <scroll-view scroll-y="false" bindscroll="scroll" style="height:100%;"> <!-- 改变位置,去掉多余的view,直接改变背景色的透明度实现透明渐变 -->  <view class="page-group" style="background-color: rgba(138, 43, 226,{{scrollTop / 400 > 0.9 ? 0.9 : scrollTop / 400}});">   <view class="page-nav-list"><text>首页</text></view>   <view class="page-nav-list"><text>活动</text></view>   <view class="page-nav-list"><text>菜单</text></view>   <view class="page-nav-list"><text>我的</text></view>  </view>  <view class="page-banner">   banner  </view>  <view class="goods-list">   goods-list1  </view>  <view class="goods-list list2">   goods-list2  </view>  <view class="goods-list list3">   goods-list3  </view>  <view class="goods-list list4">   goods-list4  </view> </scroll-view></view>

WXSS

.page-banner{height: 500rpx;background-color: greenyellow;padding: 20rpx;color:#fff;padding-top: 100rpx;}/*去掉多余的class,直接设置背景色为rgba格式*/.page-group{ display: table; width: 100%; table-layout: fixed; background-color: rgba(138, 43, 226,0); position: fixed; top: 0; left: 0; z-index: 10;}.page-nav-list{ padding:30rpx 0 ; display: table-cell; text-align: center; width: 100%; color: #fff;}.goods-list{ height: 500rpx; background-color: green; padding: 20rpx; color:#fff;}.list2{background-color: blue;}.list3{background-color: yellow;}.list4{background-color: red;}

JS

Page({ data: {  scrollTop: null }, //滚动条监听 scroll: function (e) {  this.setData({ scrollTop: e.detail.scrollTop }) },})

总结:

1.优点是去掉了多余的view空和class代码,减少了代码,实现了相同的效果。

2.缺点就是在微信开发者工具中,保存刷新不能获取当前位置scrollTop,只有滚动才能获取scrollTop。

希望本文所述对大家微信小程序开发有所帮助。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表