猿问

有没有办法改变 HTML 元素的 hitboxes 的形状?

我正在做一个项目,里面有一颗钻石。它的形状是这样的:

但是,您可以单击边界框中的任意位置来激活它。这很烦人,因为如果你把很多东西放在一起,它们会激活第一个创建的边界框,因为它的边界框与另一个边界框重叠。

我正在寻找一个简单的函数来改变它的形状,无论是CSS还是JS,或者类似的解决方法。


叮当猫咪
浏览 77回答 1
1回答

LEATH

你需要这样做clip-path.box {&nbsp; width:200px;&nbsp; height:100px;&nbsp; display:inline-block;&nbsp; vertical-align:top;&nbsp; /* to create the borders*/&nbsp; background:&nbsp; &nbsp; linear-gradient(to top&nbsp; &nbsp; left ,transparent 49%,#000 50%) top&nbsp; &nbsp; left,&nbsp; &nbsp; linear-gradient(to top&nbsp; &nbsp; right,transparent 49%,#000 50%) top&nbsp; &nbsp; right,&nbsp; &nbsp; linear-gradient(to bottom left ,transparent 49%,#000 50%) bottom left,&nbsp; &nbsp; linear-gradient(to bottom right,transparent 49%,#000 50%) bottom right;&nbsp; background-size:calc(50% + 5px) calc(50% + 3px); /* control the border thickness here */&nbsp; background-repeat:no-repeat;&nbsp; background-color:red;&nbsp;&nbsp;&nbsp; clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);}.box:hover {&nbsp; background-color:yellow;}<div class="box"></div><div class="box" style="margin:50px 0 0 -100px"></div><div class="box" style="margin:0 0 0 -100px"></div>
随时随地看视频慕课网APP

相关分类

Html5
我要回答