微信小程序中使用Vant Weapp的ActionSheet上拉菜单出现的样式问题

贴一下原效果图:

存在的问题

1.每一项样式高度太大,跟示例不一样;

2.取消按钮不居中,上方的间隔条(灰色地方)也不居中。

ps:微信开发工具和真机模拟存在同样的问题,出现的问题仅在我开发中遇到的,没遇到的请忽略。

以下修改的源码均在action-sheet组件中。

解决问题:

1.通过查看样式源代码发现行高度被设置为50px(是不是有猫病?),原示例代码是22px,所以修改行高度为22px即可解决。

在index.wxss:

 2.下方的取消按钮不居中,通过审查元素发现它的宽带已经超出了手机屏幕的宽度,出现的滚动条导致的,

具体 什么原因导致暂时不知,解决方案是给.van-action-sheet__cancel添加样式box-sizing: border-box可解决。

在index.wxss:

.van-action-sheet__cancel {    
    box-sizing: border-box
}

上方的灰色间隙在小程序ui和h5 ui方式不一样,h5方案按钮与取消按钮之间添加一个div用来做间隔,而小程序ui是给.van-action-sheet__cancel添加伪元素控制,同样样式存在问题。因此直接修改源码采用h5方案即可解决。

在index.wxm添加代码:

<view
   wx:if="{{ cancelText }}"
   class="van-action-sheet__gap"
></view>     

在index.wxss:

注释掉.van-action-sheet__cancel:before,同时添加.van-action-sheet__gap的样式

.van-action-sheet__gap {
    display: block;
    height: 8px;
    height: var(--action-sheet-cancel-padding-top, 8px);
    background-color: #f7f8fa;
    background-color: var(--action-sheet-cancel-padding-color, #f7f8fa)
}

通过以上修改,可解决action-sheet样式问题。

原文地址:https://www.cnblogs.com/licurry/p/13897199.html