这是正确的方式来改变我的主页超链接的颜色,因为我导航到其他页面
本文关键字:因为 导航 其他 颜色 主页 方式 我的 改变 超链接 | 更新日期: 2023-09-27 17:49:21
当我浏览到其他页面时,我试图改变母版页面中超链接的颜色。
这是我的代码在page_load我的主页,我认为会工作。
if(!IsPostBack)
{
if(Session["Clicked"]=="HyperLink1"){HyperLink1.Style.Add("color", "#009900")};
if(Session["Clicked"]=="HyperLink2"){HyperLink2.Style.Add("color", "#009900")};
if(Session["Clicked"]=="HyperLink3"){HyperLink3.Style.Add("color", "#009900")};
if(Session["Clicked"]=="HyperLink4"){HyperLink4.Style.Add("color", "#009900")};
if(Session["Clicked"]=="HyperLink5"){HyperLink5.Style.Add("color", "#009900")};
}
然后在每一页中,我在该页的page_load下写了这样的东西
if(!IsPostBack)
{
Session["Clicked"]="HyperLink3";
}
我得到一个"expected;"错误,当我运行这个。但说实话,我试了很多办法来摆脱它。我知道这是很简单的东西,我找不到它。这是改变超链接颜色的正确方法吗?
分号是for语句而不是for括号
if(!IsPostBack)
{
if(Session["Clicked"]=="HyperLink1"){HyperLink1.Style.Add("color", "#009900");}
if(Session["Clicked"]=="HyperLink2"){HyperLink2.Style.Add("color", "#009900");}
if(Session["Clicked"]=="HyperLink3"){HyperLink3.Style.Add("color", "#009900");}
if(Session["Clicked"]=="HyperLink4"){HyperLink4.Style.Add("color", "#009900");}
if(Session["Clicked"]=="HyperLink5"){HyperLink5.Style.Add("color", "#009900");}
}
这就是为什么你得到预期的;
<asp:HyperLink id="homelink" CssClass="linkstuff" runat="server">
.linkstuff a:visited{
color: #009900;
}
正确的方法是使用样式表:
a:visited {
color: #009900;
}
对于常规超链接来说,这似乎是一个巨大的过度。你为什么不使用CSS":visited"选择器?
在你的CSS定义中添加
a:visited
{
color: #009900;
}