移动 safari 上的绝对定位输入宽度

Absolutely positioned input width on mobile safari

我有一个绝对定位在容器内的输入。容器固定宽度200,输入固定160,左边边距20。这会产生您在 Chrome:

上期望的结果

但是在移动版 safari 中...它看起来像这样:

Here is a minimum reproducible bug。关于如何获取它的说明 运行 在自述文件中。

当内部组件是 div 时,此错误不会出现,但似乎特定于 input

如何在移动 safari 上格式化绝对定位的文本输入,使其与在 Chrome、Safari 和 Firefox 上的对齐方式相同?

只需将 padding:0 添加到您的 input 字段即可解决问题。对于 iOS,这似乎是 Safari 中的一个已知问题,因为它默认会在输入字段中添加额外的填充。

从这里得到一些帮助来修复它:

Input field showing different size in iOS

无法在 GIT 中的代码中找到修复它的相关位置。猜猜我是新手:)

希望这对您有所帮助。干杯!

截图如下: