我有以下html,我需要runat="server"
<h2 class="admin-manager-table-header" runat="server" id="hdrBorrower">Borrower</h2>
然后,我有以下CSS:
.admin-manager-table-header#headerPending, .admin-manager-table-header#hdrBorrower {
background-color: rgb(0, 176, 240);
}
由于服务器已将ID更改为:
ctl00_body_hdrBorrower
所以我的CSS现在
.admin-manager-table-header#headerPending, .admin-manager-table-header#hdrBorrower , .admin-manager-table-header#ctl00_body_hdrBorrower{
background-color: rgb(0, 176, 240);
}
我的问题有两个:
1.服务器会始终将ID更改为此,还是有时会更改ID?
2.如果ID的名称一致,那么在CSS样式表中使用此ID是我的错误做法吗?
最佳答案
通常,它会根据DOM中节点的位置进行更改(如服务器在响应客户端之前看到的那样)。 .NET可以使用两种略有不同的算法来生成ID。请参见Control.ClientIDMode。
从.NET 4.0开始,我相信您可以使用Static的ClientIdMode
属性来使手工选择的ID“粘住”。
关于html - Asp.net runat =“server”更改ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32053262/