我已经通过CSS在活动导航栏项上定义了闪亮效果:
@-webkit-keyframes ShineAnimation{
from {
background-repeat:no-repeat;
background-image:-webkit-linear-gradient(
top left,
rgba(255, 255, 255, 0.0) 0%,
rgba(255, 255, 255, 0.0) 47%,
rgba(255, 255, 255, 0.13) 49%,
rgba(255, 255, 255, 0.3) 50%,
rgba(255, 255, 255, 0.13) 51%,
rgba(255, 255, 255, 0.0) 53%,
rgba(255, 255, 255, 0.0) 100%
);
background-position:-250px -250px;
background-size: 600px 600px
}
to {
background-repeat:no-repeat;
background-position:250px 250px;
}
}
.navbar-default .navbar-nav>li>a.active {
width:100%; /*Make sure the animation is over the whole element*/
-webkit-animation-name: ShineAnimation;
-webkit-animation-duration: 10s;
-webkit-animation-iteration-count: infinite;
}
我将anchor元素用作参考,因为这是导航栏项的生成HTML如下所示:
<li class="menu-item"><a href="/kkom/patrick/app.nsf/meetingsUpcoming.xsp" class="active">Kommande agendor</a></li>
我尝试在锚点父元素(li)上设置活动类,但这无法正常工作,因为我需要将元素的宽度设置为100%
.navbar-default .navbar-nav>li.active {
width:100%; /*Make sure the animation is over the whole element*/
-webkit-animation-name: ShineAnimation;
-webkit-animation-duration: 10s;
-webkit-animation-iteration-count: infinite;
}
不希望使用锚元素,因为它只是li元素的一部分,所以从li元素的一半开始施加闪亮效果。
有人建议如何解决此问题吗?
导航栏的HTML示例:
<div class="navbar applayout-banner navbar-default navbar-fixed-top" role="banner">
<a class="navbar-brand" href="init.xsp">MyApp</a>
<div class="container-fluid applayout-banner-container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse-target">
<span class="sr-only">Change Navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div></div>
</div>
<div class="navbar-collapse-target navbar-collapse collapse">
<ul id="view:_id1:_id2:defLayout_al" class="nav navbar-nav applayout-links">
<li class="menu-item"><a href="/object.xsp?type=Preview" class="active">Running</a></li>
<li class="menu-item"><a href="/meetingsUpcoming.xsp" class="inactive">Coming meetings</a></li>
</ul>
</div>
</div>
</div>