ASP.Net MVC:我怎么能轻易改变的基于我在标签上我的导航菜单的选项卡颜色?(ASP.Net

2019-10-18 14:35发布

我想实现我的导航选项卡有点像在这个网站的人,而且我听说这是使用ASP.Net MVC建。 如果我在stackoverflow.com/users,比“用户”菜单标签是橙色,如果选择不同的选项卡所有其他人留灰,相同。

我与操纵的CSS改变颜色,当它盘旋或选择等,并添加/删除/菜单容器授权项目还不错,但不熟悉如何根据标签页上更改标签的颜色,我“M上。 任何快速和肮脏的方式做到这一点?

Answer 1:

分配唯一的ID对每个页面的主体元件(例如<body id="users"> 在ASP.NET MVC,你可以在你的母版页body标签写的:

<body id="<%= ViewData["bodyId"] %>">

而在控制方法的每一页放像ViewData["bodyId"] = "users"; 动态分配的每一页ID。

然后在你的资产净值的标记,指定一个类上链接到该网页的<a>标签相同的名称:

<ul>
    <li><a href="/users" class="users">Users</a></li>
    <li><!-- more links --></li>
</ul>

然后在CSS做这样的事情:

body#users a.users, body#another-page a.another-page {
    /* include rules for how you want the current page tab to appear */
}

这将赋予你的“当前页”样式的任何链接标签与一类body标签ID相匹配。



Answer 2:

而且什么布赖恩提到,我通常在这样的情况下“的CssClass”属性添加到我的视图模型。 它也是其中的CssClass的计算稍微复杂一些(因为它可以在虚拟机进行测试)的情况有用。



文章来源: ASP.Net MVC: How can I easily change the tab color of my navigation menu based on the tab that I'm on?