dcloudio / mui

最接近原生APP体验的高性能框架
https://dev.dcloud.net.cn/mui/
MIT License
13.49k stars 6.57k forks source link

iOS16.2版本中所有的选择器都有错位现象 #522

Open jywangyou opened 1 year ago

jywangyou commented 1 year ago

iOS16.2版本使用选择器的时候,会出现错位现象

sunzcdev commented 1 year ago

有可供替换的库吗? 这个项目官方都弃坑了,找个不管是用vant还是官方提供的uni-app都得换成vue框架,改动太大了。有没有什么开源库能只替换这个mui.datepicker 的?

fcl999 commented 1 year ago

.mui-ios-16.mui-ios-16-2 .mui-pciker-list{transform-origin-z: 0 !important;}

lj1045893704 commented 1 year ago

mui.picker.all.js 或 mui.picker.js 前增加,ios 16.2版本判断; var maches = userAgent.match(/iphone os ([\d_]+) /i); if (maches && maches.length >= 2 && maches[1] >= "16_2"){ return; } self.list.style.webkitTransformOrigin

jywangyou commented 1 year ago

有可供替换的库吗? 这个项目官方都弃坑了,找个不管是用vant还是官方提供的uni-app都得换成vue框架,改动太大了。有没有什么开源库能只替换这个mui.datepicker 的?

下面两个老兄的方法都可以

fcl999 commented 1 year ago

这个部分机型有问题 建议改成translateY

css 注释 .mui-pciker-list li {/position: absolute;/} 所有的 preserve-3d

js calcElementItemPostion 函数删除循环中的 webkitTransformOrigin与webkitTransform 赋值 setAngle 函数 style.webkitTransform = "perspective(1000px) rotateY(0deg) rotateX(" + e + "deg)" 改成 list.style.webkitTransform = "translateY(-" + (e/20 * 36) + "px)"

sutra commented 1 year ago

如果你的系统无法通过 JavaScript 探测到操作系统或者浏览器版本(window.navigator.userAgent),可以试试:

Tested in mui v3.4.0

@supports (font-variant-alternates: styleset(nice-style)) {
    /* Supported from Safari 16.2 */
    /* https://developer.apple.com/documentation/safari-release-notes/safari-16_2-release-notes */

    .mui-pciker-list {
        transform-origin-z: 0 !important;
    }
}
pass13046132 commented 1 year ago

iOS 16.0 16.1.1版本用css的方式,还是不能生效,有解决方案吗?

sutra commented 1 year ago

iOS 16.0 16.1.1版本用css的方式,还是不能生效,有解决方案吗?

你的意思是,在 iOS 16.0 16.1.1 上也会错位吗?

pass13046132 commented 1 year ago

iOS 16.0 16.1.1版本用css的方式,还是不能生效,有解决方案吗?

你的意思是,在 iOS 16.0 16.1.1 上也会错位吗?

是的,真机实测的

sutra commented 1 year ago

iOS 16.0 16.1.1版本用css的方式,还是不能生效,有解决方案吗?

你的意思是,在 iOS 16.0 16.1.1 上也会错位吗?

是的,真机实测的

是修改代码前,还是应用了上述修改后?

iHaroro commented 1 year ago

try this: MUI 中 Picker 插件异常表现问题修复