Я хочу добавить стиль A:Hover
к HyperLink управляют от кода позади.
Я могу сделать как это:
HyperLink hlRow = new HyperLink();
hlRow.Style.Add("color", "#000000");
hlRow.Style.Add("text-decoration", "none");
Но как я могу добавить стили для A:Hover
для управления гиперссылкой? Я должен определить класс и партнера что класс с этим управлением, если да как?
][]:hover[
] является селектором, а не стилем. То, что вы делаете в своем примере, это добавляете к элементу стили inline, и эквивалент селектора для этого явно не имеет смысла.[
]Вы можете добавить класс к вашей ссылке: []hlRow.CssClass = 'abc';[
]
И определите свой класс как таковой:[
a.abc: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";
] ] Ты не можешь. [
] [] Так что просто не применяйте стили прямо так, а применяйте класс "foo", а затем определите это в вашей CSS-спецификации:[
]. [a.foo { color : orange; }
a.foo:hover { font-weight : bold; }
] Попробуйте это:
Html Markup
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="#">HyperLink</asp:HyperLink>
Code
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");
}