下面是“CSS实现鼠标悬停svg图标描边效果”的完整攻略。
1. 确定使用的SVG图标
首先,在网站中选择一个SVG图标,并将其添加到HTML页面中。需要注意的是,为了能够实现鼠标悬停描边效果,SVG图标必须是矢量图形。
2. 编写CSS样式
接下来,需要为SVG图标编写CSS样式。这里需要用到CSS中的stroke
属性。
具体来说,需要将SVG图标的描边颜色设置为透明,然后在鼠标悬停的时候将描边颜色改变为期望的颜色。下面是一个示例代码:
svg {
stroke: none; /* 设置描边颜色为透明 */
transition: stroke 0.3s ease-in-out; /* 添加过渡效果 */
}
svg:hover {
stroke: #ff0000; /* 鼠标悬停时改变描边颜色 */
}
在上面的示例代码中,stroke
属性用来设置描边颜色,transition
属性则用来添加过渡效果,让描边颜色的变化更加平滑。
3. 示例说明
下面给出两个示例说明。
示例一
一个带有“小箭头”SVG图标的按钮,在鼠标悬停的时候会出现红色的描边效果。HTML代码如下:
<button>
<svg viewBox="0 0 16 16">
<path d="M0,6 l6,-6 l10,10 l-10,10 l-6,-6 l4,-4 l-4,-4 z"></path>
</svg>
Click me
</button>
对应的CSS代码如下:
button {
padding: 10px;
font-size: 18px;
background-color: #fff;
border: 2px solid #ccc;
border-radius: 5px;
cursor: pointer;
}
button svg {
width: 24px;
height: 24px;
stroke: none;
transition: stroke 0.3s ease-in-out;
margin-right: 10px;
vertical-align: middle;
}
button:hover svg {
stroke: #ff0000;
}
示例二
一个带有“邮件发送”SVG图标的链接,在鼠标悬停的时候会出现蓝色的描边效果。HTML代码如下:
<a href="#">
<svg viewBox="0 0 16 16">
<path d="M14,1H2c-1.1,0-2,0.9-2,2v10c0,1.1,0.9,2,2,2h12c1.1,0,2-0.9,2-2V3C16,1.9,15.1,1,14,1z M14.8,3L8,8.4L1.2,3H14.8z M14,13H2V5.8l6.5,5.9c0.4,0.4,1,0.4,1.4,0L14,5.8V13z"></path>
</svg>
Send email
</a>
对应的CSS代码如下:
a {
color: #333;
text-decoration: none;
border-bottom: 1px solid #ccc;
}
a svg {
width: 16px;
height: 16px;
stroke: none;
transition: stroke 0.3s ease-in-out;
margin-right: 5px;
vertical-align: middle;
}
a:hover {
border-bottom-color: #007fff;
}
a:hover svg {
stroke: #007fff;
}
以上就是“CSS实现鼠标悬停svg图标描边效果”的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CSS实现鼠标悬停svg图标描边效果 - Python技术站