我想在按钮悬停上更改Google Material Icon
(实际图标本身(。我只想用HTML
和CSS
来做到这一点.我希望它从"加号"图标变为"检查"图标之类的内容,特别是使用"完成"图标。下面的代码笔。 谢谢
.material-icons.md1 {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 33px;
margin-top: 12px;
}
.btnwrap {
position: fixed;
z-index: 2;
height: 60px;
width: 300px;
background-color: #074fb2;
font-size: 20px;
display: block;
text-align: center;
vertical-align: middle;
line-height: 60px;
color: #fff;
border-radius: 50px;
cursor: pointer;
}
.btntext1 {
position: absolute;
left:85px;
transition: all .1s;
}
.btntext2 {
position: absolute;
width: 100%;
transition: all .2s;
opacity: 0;
}
.innerbtn {
z-index: 1;
position: relative;
float: left;
height: 56px;
width: 56px;
background-color: #3e81dc;
border-radius: 50px;
display: inline-block;
margin-top: 2px;
margin-left:2px;
transition: all 1s;
}
.btnwrap:hover .btntext1 {
opacity: 0;
transition: all .5s;
}
.btnwrap:hover .btntext2 {
opacity: 1;
transition: all .5s;
}
.btnwrap:hover .innerbtn {
margin-left: 242px;
}
<link href="https://fonts.googleapis.com/icon?family=Material+Icons"
rel="stylesheet">
<div id="button1" class="btnwrap" title="download_btn">
<div class="innerbtn"><i class="material-icons md1">add</i></div>
<div class="btntext2">Click Now</div>
<div class="btntext1">Download for FREE</div>
</div>
https://codepen.io/anon/pen/YYEXYy
所以我
在这里回答我自己的问题。将 html 留空,在 CSS 中添加带有":before"的"内容",然后使用悬停状态更改该":before"。请参阅分叉的代码笔:
<i class="material-icons md1" style="margin-top: 12px;"></i></div>
.material-icons.md1::before{
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 33px;
content:"add";
}
.btnwrap:hover .material-icons.md1::before{
content:"done";
}
https://codepen.io/anon/pen/aEVOEr
HTML
<i class="material-icons md1"></i>
.CSS
.material-icons.md1::before{
content:"add";
}
.material-icons.md1:hover::before{
content:"remove";
}
https://codepen.io/Funny0Frank/pen/RMYBvQ