最近在用百度小程序写项目,遇到一个问题,设计图中有个左侧固定右侧横向滚动的表格,查看小程序文档组件,并没有完全一致的。
倒是有个差不多的,乍看差不多,实则完全不一样,方向什么的都不同,且未提供更改方向等的属性方法,所以无奈之下只能手写。又发现并不支持table、th、td等,所以只能用 view 拼凑咯。
以下是我整理的一个小Demo,由百度小程序 view 写法改成了HTML中的 div 写法,可能有点简陋,但是自己还是蛮满意的,😄。
先来看样子,红色边框是我定的外部宽度。
再来上代码
<div class="t-b"><div><div class="t-b-1"><div>序号</div><div>姓名</div><div>性别</div></div><div class="t-b-1"><div>1</div><div>小王</div><div>男</div></div></div><div><div class="t-b-2"><div>年龄</div><div>语文成绩</div><div>数学成绩</div><div>英语成绩</div><div>物理成绩</div><div>化学成绩</div><div>生物成绩</div></div><div class="t-b-2"><div>18</div><div>110</div><div>120</div><div>110</div><div>40</div><div>50</div><div>60</div></div></div></div>
.t-b {width: 400px;border: 1px solid #ff0000;display: flex;justify-content: space-around;text-align: center;font-size: 14px;padding: 15px 0;}.t-b>div:nth-child(1) {box-shadow: 0 2px 8px #818181}.t-b>div:nth-last-child(1) {overflow: scroll;}.t-b-1,.t-b-2{width:186px;display:flex;}.t-b-2 {width: 434px;}.t-b-1 div,.t-b-2 div {border: 1px solid #f0f0f0;width:60px;height:25px;line-height:25px;}.t-b-1:nth-child(1) {background-color: #f0f0f0;}.t-b-2:nth-child(1) {background-color: #f0f0f0;}
这样就 OK 啦。
如果在百度小程序中使用,只需要将 div 变成 view,将 px 变成 rpx 即可。