以编程方式更改链接颜色
本文关键字:链接 颜色 方式更 编程 | 更新日期: 2023-09-27 18:21:24
我目前正在通过以下操作从代码后面更改样式:
Div.Style["StyleAttribute"] = MyValue;
我想通过程序更改Div
中的a
链接标签颜色,这可能吗?
该解决方案不得使用HTML5。
内容总是动态的,链接不是静态的,所以使用runat="server"
是不可能的。
下一步是查看是否可以更改活动、悬停和访问状态。
$('a', $('#divId')).css('color', 'red')
JQuery文档:
- css
- JQuery上下文选择器
如果选择此解决方案,页面将不再验证,但它可以在所有浏览器中工作并完成任务。
在你的html中你做:
<div class="StyledLinkWrapper">
<style id="stylemylinks" runat="server"> </style>
<a href="http://www.xyz.com">a Link</a>
</div>
在代码背后简单地说:
string colorNormal = "blue";
string colorVisited = "red";
string colorHover = "white";
string bghover = "blue";
StringBuilder style = new StringBuilder();
style.AppendLine(".StyledLinkWrapper a {");
style.AppendLine(String.Format(" color: {0};", colorNormal));
style.AppendLine("}");
style.AppendLine(".StyledLinkWrapper a:hover {");
style.AppendLine(String.Format(" color: {0};", colorHover));
style.AppendLine(String.Format(" background-color: {0};", bghover));
style.AppendLine("}");
style.AppendLine(".StyledLinkWrapper a:visited {");
style.AppendLine(String.Format(" color: {0};", colorVisited));
style.AppendLine("}");
stylemylinks.InnerText = style.ToString();
就这样。只是普通的旧Cs,没有花哨的Javascript框架或其他什么,而且你可以完全灵活地做什么。
尝试使用数据属性:
Div.Attributes.Add("data-link-color", "red");
jQuery:
$("#divID a").css("color", $("#divID").data("link-color"));
你可能可以对悬停等使用类似的东西。
使用javascript/jquery
$("a:active").css("color", "red");
$("a:hover").css("color", "red");
尝试一次
在html 中
<div runat="server" id="divControl">...</div>
在.cs文件中
protected System.Web.UI.HtmlControls.HtmlGenericControl divControl;
divControl.Styles.Add("height", number / anotherNumer);
可以应用样式。
希望这能有所帮助!!!