微信小程序----Grid(九宫格)(flex实现九宫格布局)

效果二维码

效果图

在这里插入图片描述

WXML

<view class="section">
  <view class="tui-table-view">
    <view class="tui-col-3">
      <icon class="iconfont icon-shouye"></icon>
      <view>Home</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-xinfeng"></icon>
      <view>Email</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-duihuaxinxi"></icon>
      <view>Chat</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-dibiao"></icon>
      <view>location</view>
    </view>
    <view class="tui-col-3">
      <icon type="search" size='30'></icon>
      <view>search</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-dianhua"></icon>
      <view>phone</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-shezhi"></icon>
      <view>setting</view>
    </view>
    <view class="tui-col-3">
      <icon type="info" size='30' color='#797979'></icon>
      <view>about</view>
    </view>
    <view class="tui-col-3">
      <icon class="iconfont icon-gengduotianchong"></icon>
      <view>more</view>
    </view>
  </view>
</view>

WXSS

.tui-table-view{
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}
.tui-col-3{
 flex: 0 0 auto;
  width: 33.33333333%;
  text-align: center;
  color: #797979;
  padding: 40rpx 0;
  font-size: 30rpx;
}

总结

1、使用flex进行布局要注意兼容性,所以采用:display: -webkit-flex;display: flex;
2、为了保证每排三个图标的两对对齐,采用:justify-content: space-between;
3、父元素必须设置flex-wrap: wrap;进行换行,否则会在一排展示;
4、每个子元素的宽度width: 33.33333333%;必须写出,否则会按照其占位大小分配;
5、每个子元素设置flex: 0 0 auto;否则某个子元素超出,会改变其他元素大小!

WXRUI体验二维码

WXRUI体验码

如果文章对你有帮助的话,请打开微信扫一下二维码,点击一下广告,支持一下作者!谢谢!

其他

我的博客,欢迎交流!

我的CSDN博客,欢迎交流!

微信小程序专栏

前端笔记专栏

微信小程序实现部分高德地图功能的DEMO下载

微信小程序实现MUI的部分效果的DEMO下载

微信小程序实现MUI的GIT项目地址

微信小程序实例列表

前端笔记列表

游戏列表

  • 8
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
实现九宫格抽奖的微信小程序可以分为以下几个步骤: 1. 绘制九宫格布局,可以使用 `view` 和 `text` 标签来实现。 2. 定义一个数组用来存储九宫格每个格子的内容,包括奖品图片和名称等。 3. 编写一个随机数生成函数,用来随机选取一个格子作为中奖格子。 4. 给九宫格格子添加点击事件,点击后触发抽奖逻辑,根据随机数生成函数生成的结果判断是否中奖,如果中奖则弹出中奖提示框,否则弹出未中奖提示框。 下面是一个简单的示例代码: ```html <view class="container"> <!-- 绘制九宫格布局 --> <view class="grid"> <view class="item" bindtap="onTap"> <image src="奖品图片1"></image> <text>奖品名称1</text> </view> <view class="item" bindtap="onTap"> <image src="奖品图片2"></image> <text>奖品名称2</text> </view> <!-- 其他格子省略 --> </view> </view> ``` 在 JS 文件中定义九宫格格子的内容数组和随机数生成函数: ```javascript const items = [ { image: '奖品图片1', name: '奖品名称1' }, { image: '奖品图片2', name: '奖品名称2' }, // 其他格子省略 ]; function random(max) { return Math.floor(Math.random() * max); } ``` 在 `onTap` 函数中实现抽奖逻辑: ```javascript function onTap(event) { const index = event.currentTarget.dataset.index; const item = items[index]; if (random(9) === 0) { wx.showModal({ title: '恭喜中奖', content: `您获得了${item.name}`, showCancel: false, }); } else { wx.showModal({ title: '很遗憾', content: '未中奖,请再接再厉', showCancel: false, }); } } ``` 注意,这里的 `random(9)` 表示生成一个 0 到 8 的随机数,表示有 1/9 的概率中奖。实际中可以根据需要调整中奖概率,例如设置为 `random(10)` 表示有 1/10 的概率中奖。 最后在 CSS 文件中定义九宫格布局和格子样式: ```css .container { display: flex; justify-content: center; align-items: center; height: 100vh; } .grid { display: flex; flex-wrap: wrap; width: 300rpx; height: 300rpx; border: 1rpx solid #ccc; } .item { display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100rpx; height: 100rpx; border: 1rpx solid #ccc; } ``` 这样就可以实现一个简单的九宫格抽奖微信小程序了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rattenking

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值