我有一个导航栏,其中按钮具有悬停状态,但也需要在其各自的页面上处于“活动”状态。由于此导航栏是包含的一部分,因此我决定通过body标签上的类来执行活动状态,如.dashboard .dashboard-button
。所以我有这个悬停。Sass多状态导航栏问题
我试图找出最简单的方法来做到这一点与Sass/Compass。我创建了几个混入的:
@mixin nav-button-on($icon) {
background-color: #2f3684; // Old browsers
@include filter-gradient($offwhite, #E5E5E5, vertical); // IE6-9
@include background-image(url('../images/'+$icon+'-on.png'),linear-gradient(top, $offwhite 0%, #E5E5E5 100%));
border-bottom: $borderbottom solid #F31A35;
a { color: $red;}
}
@mixin nav-button($icon){
background-color: #fff; // Old browsers
@include filter-gradient(#fff, #fff, vertical); // IE6-9
@include background-image(url('../images/'+$icon+'.png'),linear-gradient(top, #fff 0%, #fff 100%));
}
当按钮被定义
然后在李,我有
li {
&.dashboard {
@include nav-button('dashboard');
}
.dashboard &.dashboard {
@include nav-button-on('dashboard');
&:hover {
@include nav-button-on('dashboard');
}
}
}
HTML:
<body class="dashboard">
<div id="nav">
<ul>
<li class="first dashboard"><a href="/index.php">Dashboard</a></li>
<li class="challenges"><a href="/challenges.php">Challenges & Teams</a></li>
<li class="goals"><a href="/goals.php">Goals</a></li>
<li class="activity"><a href="/my-activity.php">My Activity</a></li>
<li class="destinations"><a href="/destinations.php">Destinations</a></li>
<li class="fitness last"><a href="/fitness-resources.php">Fitness Resources</a></li>
</ul>
</div>
这似乎有点令人费解,我想知道是否有人有任何建议来简化这一切。
注:我不得不添加白色到白色的渐变,因为当将鼠标悬停在具有渐变悬停状态的纯色背景上时会导致闪光。
我们可以看到你的html标记吗? – bookcasey
加入问题 – Steve
如何在评论中获得格式化的缩进代码? – Steve