是否可以在css中创建具有背景图像的等边响应三角形?

问题描述 投票:-3回答:1

它也应该在IE11中工作。我试过了:

  • 使用边框的常用三角形装箱技术 - 失败,没有背景图像。
  • 剪辑路径 - 没有IE支持失败
  • 具有倾斜和变形的三角形必须具有适当的基于百分比的长度的战争。经过约3个小时的尝试弄清楚 - 失败了

我最后的绝望努力可能是创建一个SVG蒙版,其中切入三角形并将其放置在具有所需图像的<div>顶部。但它感觉很hacky。

html css html5 css3 svg
1个回答
1
投票

获得它的一种可能性:

.base {
  width: 70%;;
  height: 200px;
  margin: 10px;
}

.test {
  background-image: url(http://lorempixel.com/600/600);
  width: 100%;
  height: 0px;
  padding-top: 86.6%;
  position: relative;
}

.test:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 50%;
  bottom: 0px;
  background-image: linear-gradient(-60deg, transparent 50%, white 50%);
}

.test:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 50%;
  bottom: 0px;
  right: 0px;
  background-image: linear-gradient(60deg, transparent 50%, white 50%);
}
<div class="base">
  <div class="test"></div>
  </div>
© www.soinside.com 2019 - 2024. All rights reserved.