我有一个容器,它是用clip-path切割的,有一些背景色。在所有支持clip-path的浏览器中都能完美工作,但移动Safari (可能桌面Safari也是如此,无法测试)。
https://codepen.io/Deka87/pen/PXVNgQ
HTML:
<!-- Container -->
<div></div>
<!-- Clip -->
<svg>
<defs>
<clipPath id="clip" clipPathUnits="objectBoundingBox">
<path d="M 0 0 V 1 A 5 5 0 0 1 1 1 V 0 Z"></path>
</clipPath>
</defs>
</svg>CSS:
div {
min-height: 300px;
background-color: gray;
padding: 100px 0;
-webkit-clip-path: url(#clip);
clip-path: url(#clip);
}
svg {
width: 0;
height: 0;
position: absolute;
}Safari中的问题是,当应用clip-path时,容器的背景就像它的background-clip属性被设置为content-box一样,即它不会移到填充的后面,所以这些区域保持空白。
任何帮助都将不胜感激。
发布于 2020-01-17 04:25:13
我刚刚遇到了同样的问题,并能够通过向被裁剪的元素添加额外的包装器div并将填充移动到子元素中来解决它。这不是一个真正的修复,但让我继续前进。
HTML:
<!-- Container -->
<div class="parent">
<div class="child">
</div>
</div>
<!-- Clip -->
<svg>
<defs>
<clipPath id="clip" clipPathUnits="objectBoundingBox">
<path d="M 0 0 V 1 A 5 5 0 0 1 1 1 V 0 Z"></path>
</clipPath>
</defs>
</svg>CSS:
.parent {
-webkit-clip-path: url(#clip);
clip-path: url(#clip);
}
.child {
background-color: gray;
min-height: 300px;
padding: 100px 0;
}
svg {
width: 0;
height: 0;
position: absolute;
}请参阅此处的示例:https://codepen.io/mprquinn/pen/8b1e4e6004e989491f294a8899a94ec7
希望这对你有帮助!
https://stackoverflow.com/questions/54186766
复制相似问题