我已经到处搜索了好几个星期,但我找不到我的问题的答案。
是否可以在正三角形内放置图像?
我见过很多创建形状或蒙版的方法,但我需要一个真正的三角形,因为我需要有几个相邻的三角形,其中一些倒置对齐,就像在这个 = 图像中一样:
http://www.tiikoni.com/tis/view/?id=d49c960
我用颜色来划分两种类型的三角形,但它们都有图像而不是颜色。
我试过使用 skewX、skewY 和旋转,我有足够的结果,但它并不完美:
<div class='pageTri2'>
<a href='#' class='option2'>
<img src='image.jpg'>
</a>
</div>
<style>
.pageTri2 {
overflow: hidden;
position: relative;
margin: 40px auto;
width: 250px; height: 250px;
display: inline-block;
}
.option2, .option2 img { width: 100%; height: 100%; }
.option2 {
overflow: hidden;
position: absolute;
transform: skewX(-25deg) skewY(45deg);
transform-origin: 50% 50% 0;
}
.option2:first-child {
transform-origin: 100% 0;
}
.option2:last-child {
transform-origin: 0 100%;
}
.option2 img { opacity: .75; transition: .5s; }
.option2 img:hover { opacity: 1; }
.option2 img, .option2:after {
transform: skewX(-20deg) skewY(-20deg) rotate(-50deg);
transform-origin: 0 100% 0;
}
.option2:first-child:after { top: 0; left: 0; }
.option2:last-child:after { right: 0; bottom: 0; }
</style>
有没有可能得到完美的结果?还是我想错了方向?
谢谢麦芽酒
编辑:我做到了!!感谢 @Spudley 向我介绍 SVG 并感谢 @ov 提出使用 jsfiddle 的建议。
这是我的代码:http: //jsfiddle.net/wkJKA/