将鼠标悬停在链接上时如何创建向下箭头(三角形)?
类似于CodePen上的结果标签,请参阅here
我试图按照上面的教程创建三角形,但没有运气
a{
background: red;
float: left;
width: 30%;
padding: 5px;
display block
}
a:hover {background: green;}
答案 0 :(得分:2)
我不确定你的意思,但这可能就是答案:
的CSS:
.arrow_down_on_hover{
position: relative;
}
.arrow_down_on_hover:before{
content: "";
width: 0;
height: 0;
border-left: 20px solid transparent;
border-right: 20px solid transparent;
display: none;
border-top: 20px solid #f00;
position: absolute;
right: 50%;
margin-right: -10px;
bottom: -20px;
}
.arrow_down_on_hover:hover:before{
display: block;
}
HTML:
<a class="arrow_down_on_hover" href="#!">hover me</a>
示例:
答案 1 :(得分:1)
a:hover .arrow-down {
width: 0;
height: 0;
border-left: 20px solid transparent;
border-right: 20px solid transparent;
border-top: 20px solid #f00;
}
&#13;
<a>link<div class="arrow-down"></div></a>
&#13;
答案 2 :(得分:0)
下面的代码只是按照您在问题中链接的教程
但由于您使用的是a
链接,因此必须将其设置为块级别display:block
,因为它是内联元素
a {
width: 0;
height: 0;
border-left: 20px solid transparent;
border-right: 20px solid transparent;
border-top: 20px solid transparent;
display:block
}
a:hover {
border-top: 20px solid green
}
&#13;
<a href="">Hover me</a>
&#13;
如果只是在悬停某个链接时显示/隐藏三角形的问题,更好的方法是使用伪元素::before
/ ::after
以及unicode向下箭头符号
a:hover::after {
content: "\25bc";
color: green
}
&#13;
<a href="">Hover me</a>
&#13;
答案 3 :(得分:0)
也许您可以使用the arrow down symbol:
a::after {
content: '\25bc';
color: red;
}
a:hover::after {
color: green;
}
<a>Hover me!</a>
▼
在HTML中而不是CSS中指定相同的字符。