首页 > 解决方案 > 如何更改 asp.net 复选框/单选按钮 css 并正确运行 atserver

问题描述

我正在使用 Bootstrap Sass 模板Shards Template来开发 ASP.NET(C#) Web 应用程序。我的复选框/单选按钮有问题,实现了 CSS,但是当我添加runat="server"属性时,单击后复选框不会更改 CSS。

<div class="custom-control custom-checkbox mb-1">
  <input type="checkbox" class="custom-control-input" id="formsCheckboxDefault">
  <label class="custom-control-label" for="formsCheckboxDefault">Default</label>
</div>

这有效,但是当像下面这样添加 runat=server 时,它不会

<div class="custom-control custom-checkbox mb-1">
  <input type="checkbox" class="custom-control-input" id="formsCheckboxDefault" runat="server"/>
  <label class="custom-control-label" for="formsCheckboxDefault">Default</label>
</div>

它显示复选框,但单击时不会更改。我怎样才能解决这个问题?这是谷歌开发者工具的截图(右击->在新窗口中打开以仔细查看):-

标签: c#htmlcssasp.net-mvcsass

解决方案


为了使用 ASP.NET webforms 运行您的示例,您需要将复选框包装在<form runat="server">.

<form runat="server">
 <div class="custom-control custom-checkbox mb-1">
 <input type="checkbox" class="custom-control-input" id="formsCheckboxDefault2" runat="server"/>
 <label class="custom-control-label" for="formsCheckboxDefault2">Default4</label>
 </div>
</form>

<asp:checkbox>不能使用,因为 ASP.NET webforms<span><input>. 因此,引导程序的 CSS 不再起作用。

请注意 Stackoverflow 的Run code snippet -functionality 不支持 ASP.NET webforms。这就是为什么常规 stackoverflow 用户无法重现您的问题的原因。您的问题只能在 ASP.NET-webform-projects 的 Visual Studio 中看到。


推荐阅读