微信小程序自定义tab选项卡切换


1.编写布局文件
 <view class="tab-box">
      <text bindtap='changTab' class="{{currentTab==0 ? 'active' : ''}}" data-current='0'>日常任务</text>
      <text bindtap='changTab' class="{{currentTab==1 ? 'active' : ''}}" data-current='1'>游戏任务</text>
      <text bindtap='changTab' class="{{currentTab==2 ? 'active' : ''}}" data-current='2'>红包任务</text>
    </view>
2.编写样式
.tab-box {
  width: 100%;
  height: 80rpx;
  display: flex;
  background: white;
  justify-content: center;
  overflow: hidden;
}

.tab-box text {
  margin-left: 60rpx;
  font-size: 30rpx;
  height: 74rpx;
  line-height: 72rpx;
}

.active {
  border-bottom: 6rpx solid #ffa810;
  border-radius: 4rpx;
}

注意border-bottom: 6rpx给的是6rpx ,tab-box的高度为80rpx ,所以text文本的高度应该为74rpx

3.js文件
  data: {
    currentTab: 0      //给一个默认值,默认第一个选中
  }


  /**
   * tab点击切换
   */

  changTab: function(event) {
    this.setData({
      currentTab: event.target.dataset.current
    })
  }
最终效果图:
yhx.gif

样式写法有很多种,有的是等分屏幕,我这里由于项目需求不是等分屏幕,直接给的maring-left ,然后水平居中即可,美滋滋

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,718评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,532评论 1 45
  • 每天的学习记录,可能有的地方写的不对,因为刚学,以后发现错的话会回来改掉整体流程 https://develope...
    有点健忘阅读 10,352评论 0 7
  • 第一章 F12: element.style 内联样式(可以直接在上面写代码进行简单调试) user agent...
    fastwe阅读 5,493评论 0 0
  • 我还是那个一边厌恶爱情一边又渴望爱情有人宠有人疼的无比纠结的双逸,总之最难熬的一年也过去了,该忘的不该忘的全都得忘记。
    没有文化的人他不伤心阅读 1,351评论 0 0

友情链接更多精彩内容