我正在使用HTML5&我的MVC 3项目上的CSS3,我的导航栏出现问题。
这是我的导航栏:
当用户将鼠标悬停在链接上时,会显示粉红色子菜单。而这一切都是用CSS3完成的,没有任何javascript。
我想要做的是当有人访问我的网络应用程序" HEM"这是" HOME"它应该像图片一样自动选择。当用户导航到让我们说" ADMIN"粉红色的子菜单总是在那里发生。
我怎么能这样做?
这是我的CSS:
ul#nav {
position:relative;
float: left;
width: 961px;
margin: 0;
padding: 0;
list-style: none;
/* gradient */
background: url(../../Content/img/nav-tile.gif) repeat-x;
}
ul#nav li {
display: inline;
}
ul#nav li a {
float: right;
font: bold 12px verdana,arial,tahoma,sans-serif;
line-height: 40px;
color: #fff;
text-decoration: none;
margin: auto;
padding: 0 35px;
}
/* APPLIES THE ACTIVE STATE */
ul#nav .current a, ul#nav li:hover > a {
color: #fff;
text-decoration: none;
text-shadow: 1px 1px 1px #330000;
background: #dd006b;
}
/* THE SUBMENU LIST HIDDEN BY DEFAULT */
ul#nav ul {
display: none;
}
/* WHEN THE FIRST LEVEL MENU ITEM IS HOVERED, THE CHILD MENU APPEARS */
ul#nav li:hover > ul {
position: absolute;
display: block;
width: 961px;
height: 30px;
position: absolute;
margin: 40px 0 0 0;
/* gradient */
background: #dd006b url(../img/menu-child.png) repeat-x;
background: -webkit-gradient(linear, left top, left bottom, from(#dd006b), to(#a1014e));
background: -moz-linear-gradient(top, #dd006b, #a1014e);
background: linear-gradient(-90deg, #dd006b, #a1014e);
}
ul#nav li:hover > ul li a {
float: left;
font: bold 12px verdana,arial,tahoma,sans-serif;
line-height: 30px;
color: #fff;
text-decoration: none;
margin: 0;
padding: 2 30px 0 0;
background: #dd006b url(../img/menu-child.png) repeat-x;
background: -webkit-gradient(linear, left top, left bottom, from(#dd006b), to(#a1014e));
background: -moz-linear-gradient(top, #dd006b, #a1014e);
background: linear-gradient(-90deg, #dd006b, #a1014e);
}
ul#nav li:hover > ul li a:hover {
text-decoration: none;
text-shadow: none;
}
和我在MVC中的布局" HEM" aka" HOME"如下:
<li>@Html.ActionLink("HEM","Index","Home")
<ul></ul>
</li>
提前致谢!
答案 0 :(得分:0)
我不知道MVC3,但可以使用Javascript / jQuery。 这里使用jQuery的一个例子: http://jsfiddle.net/MFhqW/
$('a[href="'+window.location.href+'"]').addClass('active');