[英]How to add style from code behind?
我想添加一個樣式A:Hover
從后面的代碼A:Hover
到HyperLink控件。
我可以這樣做:
HyperLink hlRow = new HyperLink();
hlRow.Style.Add("color", "#000000");
hlRow.Style.Add("text-decoration", "none");
但是如何為A:Hover
添加樣式A:Hover
為超鏈接控件? 我是否需要定義一個類並將該類與此控件關聯,如果是,如何?
您可以使用超鏈接的CssClass屬性:
LiteralControl ltr = new LiteralControl();
ltr.Text = "<style type=\"text/css\" rel=\"stylesheet\">" +
@".d
{
background-color:Red;
}
.d:hover
{
background-color:Yellow;
}
</style>
";
this.Page.Header.Controls.Add(ltr);
this.HyperLink1.CssClass = "d";
使用
HyperLink hlRow = new HyperLink();
hlRow.Attributes.Add("Style", "color:#000000");
試試這個:
Html標記
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="#">HyperLink</asp:HyperLink>
碼
using System.Drawing;
using System.Web.UI;
using System.Web.UI.WebControls;
protected void Page_Load(object sender, EventArgs e)
{
Style style = new Style();
style.ForeColor = Color.Green;
this.Page.Header.StyleSheet.CreateStyleRule(style, this, "#" + HyperLink1.ClientID + ":hover");
}
:hover
是一個選擇器,而不是樣式。 你在你的例子中所做的是為一個元素添加內聯樣式,而一個等效的選擇器顯然沒有多大意義。
您可以在鏈接中添加一個類: hlRow.CssClass = 'abc';
並定義您的類:
a.abc:hover {
...
}
還要確保aspx頁面有AutoEventWireup="true"
而不是AutoEventWireup="false"
如果沒有可供下載的文件,我需要禁用asp:linkButton,將其更改為灰色並消除懸停上的下划線。 這有效:
.disabled {
color: grey;
text-decoration: none !important;
}
LinkButton button = item.FindControl("lnkFileDownload") as LinkButton;
button.Enabled = false;
button.CssClass = "disabled";
你不能。
所以不要直接像這樣應用樣式,並應用類“foo”,然后在CSS規范中定義它:
a.foo { color : orange; }
a.foo:hover { font-weight : bold; }
試試這個
lblMsg.Text = @"Your search result for <b style=""color:green;"">" + txtCode.Text.Trim() + "</b> ";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.