【发布时间】:2022-01-14 10:22:15
【问题描述】:
在我在 Vue ^3.0.0 中为 API 开发的一个小前端上,我遇到了一个问题,在我部署它之后,我开始收到人们抱怨该网站无法在移动设备上运行的问题。我知道它必须是 safari,所以我把它加载到我躺在身边的 iPad 上,是的,它绝对摧毁了这个网站。 This 是网站。我在iOS12.5.5设备上测试过,iOS15.1设备也出现问题。
CSS 属性如:
width: clamp(325px, 30vmax, 575px);
height: clamp(40px, 3vmax, 57.5px);
除非我将它们更改为:
min-width: 325px;
width: 30vmax;
max-width: 575px;
min-height: 40px;
height: 3vmax;
max-height: 57.5px;
我觉得这很荒谬,因为我测试过的所有其他浏览器都运行良好。最大的问题是我也在字体上使用了这些钳位函数,所以它们会永远坏掉。
此外,您可能会注意到,例如搜索栏内的占位符文本在 safari 中根本没有居中。我绝对将这个项目居中,因为字体本身是偏离中心的,据我所知,它只在 safari 上中断。这是我用来居中的 ccs:
input {
position: relative
}
input::placeholder {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, calc(-50% + 2px));
}
这实际上让我很沮丧,我不明白为什么一开始会有差异,为什么没有人抱怨这个,这让我想完全放弃对 safari 的支持。
编辑:
刚刚发现这也发生在适用于 iOS 的 chrome 上。
【问题讨论】:
标签: css vue.js mobile-safari