我有一个标签设计。由向下箭头标识的活动选项卡。我只想在鼠标悬停时创建那个箭头。我不想将该箭头放置到所有选项卡上。请参考下图。是否有可能在css(可能在伪类之后或之前)或jquery中。
谢谢。
我有一个标签设计。由向下箭头标识的活动选项卡。我只想在鼠标悬停时创建那个箭头。我不想将该箭头放置到所有选项卡上。请参考下图。是否有可能在css(可能在伪类之后或之前)或jquery中。
谢谢。
就我个人而言,我不确定 CSS 的功能,但绝对可以使用 JQuery.hover()
JS
$( "li.menu_item" ).hover(
function() {
$( this ).append( $( "<span class='arrow'></span>" ) );
}, function() {
$( this ).find( "span:last" ).remove();
}
);
:after and :before
可以使用伪元素添加形状。
这是一个如何使用边界技巧的示例:
#menu
{
height: 50px;
width: 100%;
border:1px solid #d0d0d0;
/*gradient generator ftw*/
background-image: linear-gradient(bottom, rgb(249,249,249) 45%, rgb(255,255,255) 72%);
background-image: -o-linear-gradient(bottom, rgb(249,249,249) 45%, rgb(255,255,255) 72%);
background-image: -moz-linear-gradient(bottom, rgb(249,249,249) 45%, rgb(255,255,255) 72%);
background-image: -webkit-linear-gradient(bottom, rgb(249,249,249) 45%, rgb(255,255,255) 72%);
background-image: -ms-linear-gradient(bottom, rgb(249,249,249) 45%, rgb(255,255,255) 72%);
background-image: -webkit-gradient(
linear,
left bottom,
left top,
color-stop(0.45, rgb(249,249,249)),
color-stop(0.72, rgb(255,255,255))
);
}
#menu a
{
height: 100%;
width: 100px;
position: relative;
display: inline-block;
text-align: center;
line-height: 300%;
text-decoration: none;
color: #848484;
}
#menu a:hover
{
color: black;
}
#menu a:hover:before
{
content: '';
position: absolute;
bottom: -1px;
left: 40%;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 10px solid white;
z-index: 1;
}
#menu a:hover:after
{
content: '';
position: absolute;
bottom: -1px;
left: 40%;
border-left: 11px solid transparent;
border-right: 11px solid transparent;
border-bottom: 11px solid #d0d0d0;
}
:after
伪类是箭头的边界,伪:before
类是箭头本身。
如您所见,:after
伪类只是:before
伪类下方的另一个箭头。随着宽度增大 1px,您可以看到它伸出来用作边框。