ASP.NET + CSS实现动态菜单突出显示当前页面
网上关于突出显示当前页面的文章有不少,但是基本都是关于实现静态菜单的高亮,讲到动态生成菜单高亮的文章至少我没有找到,在csdn上问了两天都没有答案,最后在一位朋友的回答中找到思路,先利用一个函数判断菜单是否是正在浏览的当前页,然后付给li一个id,利用css层叠id大于class的关系,把这个id定义成高亮样式。
aspx文件代码:
引用内容
<div class="navigation">
<ul>
<asp:Repeater ID="Menu" runat="server">
<ItemTemplate >
<li <%#getCss(DataBinder.Eval(Container,"DataItem.Url"))%>><a href ='<%#DataBinder.Eval(Container,"DataItem.Url")%>'> <%#DataBinder.Eval(Container,"DataItem.ClassName")%></a></li>
</ItemTemplate>
</asp:Repeater>
</ul>
</div>
后台代码:vb版本
引用内容
Public Function getCss(ByVal Url As Object) As String
Dim curPageName As String = HttpContext.Current.Request.Url.Segments(HttpContext.Current.Request.Url.Segments.Length - 1)
If Url.ToString.ToLower = curPageName.ToLower Then
Return "id='activer'"
Else
Return Nothing
End If
End Function
C#版本:
引用内容
public string getCss(object Url)
{
string curPageName = HttpContext.Current.Request.Url.Segments(HttpContext.Current.Request.Url.Segments.Length - 1);
if (Url.ToString.ToLower == curPageName.ToLower) {
return "id='activer'";
} else {
return null;
}
}
CSS样式:
引用内容
.navigation {
background: url(../images/navigation-bg.png);
height: 38px;
width :1003px;
overflow: hidden;
line-height: 2em;
}
.navigation ul {
list-style: none;
margin: 0 auto;
padding: 0;
text-align: left;
width: 970px;
}
.navigation ul li {
background: none;
display: inline;
float: left;
list-style-type: none;
padding: 0;
}
.navigation ul li a {
color: #666;
display: block;
height: 25px;
overflow: hidden;
padding: 5px 15px 0 15px;
text-decoration: none !important;
}
.navigation ul li a:hover {
color: #fff !important;
}
#activer a{ '这个就是高亮菜单的样式,这里我用了背景图片
background: ur
相关文档:
try
{
// 要提交表单的URI字符串。
string uriString = "http://localhost:1165/WebTest/MyLogin.aspx";
//// ......
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
namespace ......
/*不管是什么方法,书写的顺序都是firefox的写在前面,IE7的写在中间,IE6的写在后面。*/
.JS_CenterAD_marquee_Right
{
margin-left:17px !important; /firefox*/
*margin-left:17px !important; / ......
今天做一个功能,根据select元素选择的不同selectedIndex项,显示一个表格里指定的tr项。
首先:$("#table tr:gt(0)").css("display","none"); 这个没问题,当要显示的时候.css("display","block"),在FF中布局一下就乱掉了。试了几次都是如此,想了一下,是不是在 ......
昨天晚上有朋友在csdn(求工作流开发资料 )上要关于工作流的资料,正好前段时间研究这方面的东西,收集了一些asp.net方面的工作流资料,心想反正都是网上来的何不造福下后来人,于是把那些觉得还可以的打了个包,放到我自己的空间(刚申请还没正式使用)上供大家下载.
以下是大概的目录,没时间写介绍,简单 ......