如何实现view设置border-image后border-radius不失效
时间: 2024-03-28 18:29:17 浏览: 84
要实现`border-image`与`border-radius`同时生效,可以使用以下方法:
1. 将`border-image`属性应用于伪元素而不是实际的元素。通过这种方式,将`border-radius`应用于实际元素,同时将`border-image`应用于伪元素,从而实现两者同时生效。
```css
.view {
position: relative;
border-radius: 20px;
}
.view::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: -1;
border-radius: inherit;
border-image: url(border-image.png) 30 round;
}
```
2. 使用`clip-path`属性来创建一个与视图形状相匹配的剪切路径,并将`border-image`应用于剪切路径而不是实际的边框。
```css
.view {
border-radius: 20px;
clip-path: path('M0 20px H100% V100% H0 Z');
-webkit-clip-path: path('M0 20px H100% V100% H0 Z');
border-image: url(border-image.png) 30 round;
}
```
这两种方法都可以实现`border-image`和`border-radius`同时生效,可以根据具体需求选择适合的方法。
阅读全文