ASP.NET Master Page Content Page 的元素似乎都被 ASP.NET 页面渲染器更改或添加了 ID。
这打破了所有基于原始元素 ID 的 CSS 样式。
这是认真的吗?如果是这样,是否有解决办法?
最佳答案
是的,您可以指定 ClientIDMode
将其设置为静态。
示例:
客户端
<asp:TextBox ID="TextBox1" runat="server" ClientIDMode="Static"></asp:TextBox>
代码隐藏
TextBox txtBox = new TextBox();
txtBox.ID = "TextBox1";
txtBox.ClientIDMode = ClientIDMode.Static
通过将其设置为静态...
The ClientID value is set to the value of the ID property. If the control is a naming container, the control is used as the top of the hierarchy of naming containers for any controls that it contains.
更新 感谢 @Chris Lively 提供更多信息
页面级别
<%@ Page Language="C#" ClientIDMode="Static" AutoEventWireup="true"...
应用级别
<system.web>
<pages clientIDMode="Static"></pages>
</system.web>
引用:
关于ASP.NET Master Page Content Page 的 ID 都变了,打破了基于原始元素 ID 的 CSS?你在开玩笑吧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5494130/