使用CSS创建左箭头&在伪元素之后

时间:2015-03-13 09:23:15

标签: html css css-shapes

我创建了一个右箭头。

如何将其翻转为左箭头第二个?

http://jsfiddle.net/n0rxtr48/

a {
    display: inline-block;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    padding: 10px 15px 10px 10px;
    position: relative;
    text-decoration: none;
}

a:before, a:after {
    border-right: 2px solid;
    content: '';
    display: block;
    height: 8px;
    margin-top: -6px;
    position: absolute;
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 10px;
    top: 50%;
    width: 0;
}

a:after {
    margin-top: -1px;
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

a:hover, a:focus,
a:hover:before, a:hover:after,
a:focus:before, a:focus:after {
    color: #000;
}
<a class="arrow"></a>

3 个答案:

答案 0 :(得分:5)

您可以像这样旋转180度箭头:

&#13;
&#13;
a {
    display: inline-block;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    padding: 10px 15px 10px 10px;
    position: relative;
    text-decoration: none;
}
.left{
  -webkit-transform:rotate(180deg);
  -ms-transform:rotate(180deg);
  transform:rotate(180deg);
}

a:before, a:after {
    border-right: 2px solid;
    content: '';
    display: block;
    height: 8px;
    margin-top: -6px;
    position: absolute;
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    right: 10px;
    top: 50%;
    width: 0;
}

a:after {
    margin-top: -1px;
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

a:hover, a:focus,
a:hover:before, a:hover:after,
a:focus:before, a:focus:after {
    color: #000;
}
&#13;
<a class="arrow"></a>
<a class="arrow left"></a>
&#13;
&#13;
&#13;

您也可以使用scaley(-1)而不是旋转来实现相同的输出。

此外,还有更简单的方法来制作此箭头,您可能需要查看此帖子,其中包含一个很棒的箭头列表,如下所示:How to Make A Fancy Arrow Using CSS?

答案 1 :(得分:1)

转换CSS属性不适用于很多设备。我建议您使用 Unicode符号

以下是箭头列表:http://unicode-table.com/en/sets/arrows-symbols/

答案 2 :(得分:1)

或者你可以使用边框

:root{text-align: center}
a{width: 10px; height: 10px; position: relative}
a:before, a:after {
    color: black;
    border-right: 2px solid currentcolor;
    border-bottom: 2px solid currentcolor;
    content: '';
    position: absolute;
    width: 16px;
    height: 16px
}

a:before{
    left: -16px;
    transform: rotate(135deg)
}
a:after{
    right: -16px;
    transform: rotate(-45deg)
}
<a></a>