我在svg中创建了箭头,并在html中显示它。
<svg xmlns="http://www.w3.org/2000/svg" width="28" height="8" viewBox="0 0 28 18">
<g id="Group1" data-name="Group1" transform="translate(28.321 -0.144) rotate(90)">
<rect id="Rectangle_1107" data-name="Rectangle 1107" width="5" height="22" transform="translate(6.144 6.321)" fill="#000000"/>
<path id="Pol_1" data-name="Pol 1" d="M9,0l9,14H0Z" transform="translate(0.144 0.321)" fill="#000000"/>
</g>
</svg>
现在我需要以下行为:如果我把鼠标移到箭头上,箭头应该变长并改变颜色,如下所示:
因此,在默认的箭头是短和黑色,然后,悬停后,箭头应该是红色和更长。如何在css中实现?
2条答案
按热度按时间mfpqipee1#
您可以使用CSS过渡。SVG元素的transform属性可以使用CSS进行样式化。我只是将箭头的左边部分移到视图框外,然后在悬停时再移回来。
在这里,我还为stroke和fill使用了currentColor,以显示如何在上下文中定义颜色,就像父HTML元素一样。
cnwbcb6i2#
选择hover。
您也可以使用transition来获得平滑效果。