我有一个按钮,可以在Chrome(桌面),Safari(桌面)上完美运行。但是在单击iOS / iPad Safari(13.1)时消失。我通过将属性1切换为1来调试它,并得出结论position:relative
是原因的一部分。由于将其关闭可以解决此问题。但是我需要我的按钮是相对的,因此想更好地理解这个问题。
和往常一样,我再次被iPad上的z-index错误困扰(他们总是让我受益)。原来,该问题与堆栈上下文有关;
<button>
元素在点击后消失,以某种方式被发送到容器的后面,即<div>
和background-color: white
。有两种方法可以解决此问题;将父容器(上下文)设置为具有z-index: 0
。那行得通。
或只是删除background-color: white
,因此将其设置为transparent
。这样,按钮就不会隐藏在后面。
但是我仍然不知道为什么仅在iPad上会发生这种情况。我知道iPad处理z-indexing的方式通常不同于桌面浏览器(包括Safari桌面),这使得它很难预测。
如果任何人都可以很好地解释这一点,我将使其作为公认的答案。