我想知道是否有办法创建一个真正的三角形形状?或者通过伪造来尽可能接近真实的三角形形状?
每当你用诸如svg之类的东西画一个三角形时,你总是被限制于一个透明的、镜像的三角形,因为元素被绘制为框。
我做了一个例子,因为我觉得很难解释这个问题:
我将整篇文章和SVG三角形都设置为链接。但由于三角形被呈现为块状,因此有一小部分完全是三角形的镜像,无法点击。
为了这个项目,我想移除不能点击的那一部分。也就是红色部分:
每当你用诸如svg之类的东西画一个三角形时,你总是被限制于一个透明的、镜像的三角形,因为元素被绘制为框。
我做了一个例子,因为我觉得很难解释这个问题:
http://codepen.io/stephan-v/pen/gaxdjm
svg {
width: 100px;
height: 100px;
position: absolute;
right: 0;
top: 0;
}
svg polygon {
fill: rgba(168, 210, 71, 0.6);
cursor: pointer;
}
svg polygon:hover {
fill: rgba(168, 210, 71, 0.9);
cursor: pointer;
}
article {
position: relative;
width: 200px;
height: 200px;
background-color: whitesmoke;
border: 1px solid lightgrey;
}
article a {
display: block;
width: 100%;
height: 100%;
}
<article>
<a href="#">
</a>
<svg>
<polygon points="0,0 100,0 100,100" />
</svg>
</article>
为了这个项目,我想移除不能点击的那一部分。也就是红色部分:
<polygon>
元素添加事件侦听器。请参见此编辑。 - Phylogenesis