小程序之头部固定

html

   <view class="{{scrollTop>100 ? 'topnavFixed' : ''}}" > 
      <view class="nav_tab{{scrollTop>100 ? ' mtop35' : ''}}">
      <!-- 如果选中的下标等于当前的索引,就使用active class名,否则class名为common  nav_tab-->
        <view wx:for="{{list}}" wx:key="list" class="{{selected==index?'active':'common'}}" data-index='{{index}}' bindtap="selected">{{item}}
        <!-- 如果选中的下标等于当前的索引,就添加下划线 -->   
        <view class="{{selected==index?'nav_underline':''}}"></view>
        </view>
      </view>
    </view>

css


.nav_title{
  margin-top:40rpx;
}

.nav_tab {
  width: 60%;
  height:100rpx;
  line-height:100rpx;
  display: flex;
  z-index: 1;
}
/* 头部固定 */
.topnavFixed{
  position:fixed;
  width:100%;
  height:130rpx;
  top:0rpx;
  background:#00C1FF;
  z-index: 1;
}
.mtop35{
  margin-top: 35rpx;
}
.none{
  display: none;
}
/* 未选中的样式 */
.common {
  text-align: center;
  color: #333;
  font-size: 28rpx;
  flex:1;
  opacity: 0.5;
}
/* 选中时的样式 */
.active {
  text-align: center;
  color: #000;
  flex:1;
  font-size: 40rpx;
}
/* 下划线的样式 */
.nav_underline {
  background: skyblue;
  height: 6rpx;
  border-radius: 8rpx;
  margin:-20rpx 30rpx;
}

js

  onPageScroll: function (e) { //监听页面滚动
    this.setData({
      scrollTop: e.scrollTop
    })
  },

借鉴: https://blog.youkuaiyun.com/Homer_Simpson/article/details/85136784

### 微信小程序固定头部的 CSS 布局实现 为了在微信小程序中实现固定头部的效果,可以通过纯 CSS 的方式完成。以下是具体的实现方法: #### 使用 `position: fixed` 定位头部 通过设置 `.weui-navigation-bar` 类的样式属性为 `fixed`,可以将头部固定在页面顶部[^1]。 ```css .weui-navigation-bar { position: fixed; top: 0px; left: 0px; right: 0px; height: 90px; /* 设置头部高度 */ z-index: 999; /* 确保头部覆盖其他内容 */ } ``` #### 添加占位空间防止内容被遮挡 由于头部已经固定在页面上方,因此需要为主内容区域预留足够的空间以避免被头部遮盖。这可以通过创建一个具有相同高度的占位容器来解决。 ```css .weui-navigation-bar_bottom { height: 90px; /* 和头部高度一致 */ } ``` #### 主体部分滚动 为了让主体部分内容能够正常滚动,需将其放置在一个独立的可滚动区域内,并调整其样式使其占据剩余的空间[^4]。 ```css .scroll-area { margin-top: 90px; /* 避开固定头部位置 */ height: calc(100vh - 90px); /* 让滚动区填满除头部之外的所有屏幕高度 */ overflow-y: auto; /* 启用垂直方向上的滚动条 */ } ``` 最终完整的 WXML 结构如下所示: ```html <view class="weui-navigation-bar"> <!-- 头部内容 --> </view> <view class="weui-navigation-bar_bottom"></view> <!-- 占位符 --> <scroll-view class="scroll-area" scroll-y> <!-- 主要内容 --> </scroll-view> ``` 以上代码片段展示了如何利用 CSS 来构建一个简单的带有固定头部小程序布局方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值