我遇到了一个奇怪的野生动物园错误,该错误使某些元素变得不可见,直到它们悬停为止。

这是由于先前用clip(clip-path)隐藏的元素引起的。 Safari仅在悬停效果改变了设计并因此迫使野生动物园重新绘制对象后才重新绘制它们。

.logo-container {
  position: absolute;
  top: 0px;
  clip: rect(0, auto, auto, 0);
  clip-path: inset(0, auto, auto, 0);
}

最佳答案

为了解决这个问题,我使用了重复的css动画来迫使safari每秒重绘元素几次。

@-webkit-keyframes mymove {
from {top: 0px;}
to {top: 0.01px;}
}

.logo-container {
  position: absolute;
  top: 0px;
  clip: rect(0, auto, auto, 0);
  clip-path: inset(0, auto, auto, 0);
  -webkit-animation: mymove 0.1s infinite; /* Safari 4.0 - 8.0 */
}


现在,该元素已重新绘制,可见性已按预期工作。

如果对此问题有更好的解决方法,请回答此问题:)

关于css - Safari不会重新绘制剪切路径隐藏的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43172928/

10-16 03:38