我在C#代码隐藏中使用了这段代码:
for (int i = PIndex2; i < PIndex2 + 10 && i < PCount; i++)
{
NavMenu.Items.Add(new MenuItem
{
Text = (i + 1).ToString(),
NavigateUrl = Request.CurrentExecutionFilePath + "?page=" + (i + 1).ToString()
});
if (i == PIndex)
{
MenuItemStyle ms = new MenuItemStyle();
ms.CssClass = "div.navmenu ul li a:focus";
}
}
如果页面是当前页面(我保存在名为PIndex的变量中),我想更改背景颜色。我似乎找不到合适的语法来做到这一点。我试过在我的CssClass语句中同时使用a:focus和a:active,两者都没有用。
我的CSS如下:
/* NAV MENU */
div.navmenu
{
padding: 2px 0px 2px 4px;
display: table;
margin: 0 auto;
text-align: center;
}
div.navmenu ul
{
list-style: none;
margin: 0px;
padding: 0px;
width: auto;
color: White;
}
div.navmenu ul li a, div.navmenu ul li a:visited
{
background-color: #465c71;
/* background-color: white; */
border: 1px #4e667d solid;
color: white;
display: block;
line-height: 1.35em;
padding: 4px 20px;
text-decoration: none;
white-space: nowrap;
}
div.navmenu ul li a:hover
{
background-color: white;
color: #465c71;
text-decoration: none;
}
div.navmenu ul li a:active, div.navmenu ul li a:focus,
{
background-color: #cfdbe6 !important;
/* color: #cfdbe6; */
color: White;
text-decoration: none;
}
悬停工作正常。但是,一旦我在页面上,我希望项目的背景颜色成为:活跃的。