[英]How to change property of control in master page from child form in asp.net
正在開發垂直導航Web應用程序。 當我單擊超鏈接(顯示在母版頁中)時,將加載子.aspx頁面,但由於它是新頁面加載,因此將設置超鏈接的默認顏色。 我想為加載的相應頁面的超鏈接設置不同的顏色。
母版頁代碼:
<header id="leftpanel">
<ul>
<li><a href="Default.aspx">Home</a></li><br />
<li><a href="Default2.aspx">About Us</a></li><br />
<li><a href="Default3.aspx">Tourism</a></li><br />
<li><a href="Default4.aspx">Enquiry</a></li><br />
</ul>
</header>
<div id="mainpanel">
<asp:Label ID="lblTitle" runat="server" Text="MAIN TITLE"></asp:Label>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
CSS的代碼:
body {
top:0;
left:0;
margin:0;
}
#leftpanel{
position:fixed;
left:0;
width:25%;
float: left;
height:100%;
background-color: gray;
text-align:center;
padding-top:250px;
}
ul, li{
padding:0;
margin:0;
list-style:none;
}
#leftpanel ul li{
font-size:15px;
line-height:15px;
letter-spacing:3px;
color:white;
margin-bottom:20px;
-webkit-font-smoothing:antialiased;
-webkit-transition:color 0.3s ease-out;
font: 20px/1.4em "PT Sans Narrow", "Arial", sans-serif;
}
#leftpanel ul li a{
color:white;
-webkit-transition:color 0.3s ease-out;
-moz-transition:color 0.3s ease-out;
-o-transition:color 0.3s ease-out;
-ms-transition: color 0.3s ease-out;
transition:color 0.3s ease-out;
font-weight:bold;
text-decoration:none;
background-color:gray;
cursor:pointer;
}
#leftpanel ul li:hover, #leftpanel ul li a:hover , #leftpanel ul li.current{
color:#0fe9bd;
-webkit-transition:color 0.3s ease-out;
-moz-transition:color 0.3s ease-out;
-o-transition:color 0.3s ease-out;
-ms-transition: color 0.3s ease-out;
transition:color 0.3s ease-out;
cursor:pointer;
}
#leftpanel a:hover, #leftpanel .active{
color:#0fe9bd;
font:x-large
}
#mainpanel{
position:fixed;
width:75%;
float:left;
left:25%;
height:100%;
text-align:center;
align-items:center;
background-color:#0fe9bd;
color:black;
font-weight:bold;
font: 20px/1.4em "PT Sans Narrow", "Arial", sans-serif;
}
另外,如果我將更新面板放置在母版頁的內容占位符中,那么如何在單擊超鏈接時將子頁面加載到更新面板中,而不是重新加載整個頁面?
讓你li
或a
服務器端就尋子頁面上,並設置背景色
母版頁代碼:
<header id="leftpanel">
<ul>
<li><a href="Default.aspx" id="home" runat="server">Home</a></li><br />
<li><a href="Default2.aspx">About Us</a></li><br />
<li><a href="Default3.aspx">Tourism</a></li><br />
<li><a href="Default4.aspx">Enquiry</a></li><br />
</ul>
</header>
<div id="mainpanel">
<asp:Label ID="lblTitle" runat="server" Text="MAIN TITLE"></asp:Label>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
子頁面代碼
protected void Page_Load(object sender, EventArgs e)
{
HtmlAnchor b = (HtmlAnchor)this.Page.Master.FindControl("home");
b.Attributes["class"] = "active";
}
您可以使用a:active and a:visited
如果要突出顯示與當前頁面相對應的鏈接,則
.currentPage { color: Aqua; background-color: #000000; }
將該類添加到相應的<li>
。 希望這個能對您有所幫助..
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.