ASP:登录<LayoutTemplate>总是生成一个<table>,如何让它停止?

10 asp.net

我刚刚开始修改ASP:登录控件,并想要编辑它的外观.所以我做了以下事情:

<asp:login ID="login" runat="server" onauthenticate="Authenticate">
 <LayoutTemplate>
  <asp:TextBox ID="UserName" runat="server"></asp:TextBox>
  <asp:TextBox ID="Password" runat="server" TextMode="Password"></asp:TextBox>
 </LayoutTemplate>
</asp:login>
Run Code Online (Sandbox Code Playgroud)

尽管我<table>在文档中的任何地方都没有标记,但是一旦我预览了页面并查看了源代码,它就会非常清楚地显示出来<table>.啊! 我如何防止这种疯狂的行为,或者我被迫使用表格而不是CSS?

lee*_*n3o 17

您可以将其设置为不使用没有第三方扩展的表,只需确保使用

<LayoutTemplate>
</LayoutTemplate>
Run Code Online (Sandbox Code Playgroud)

要在控件中布置HTML /表单,请将控制外部表的Login上的属性设置为false.

RenderOuterTable="false"
Run Code Online (Sandbox Code Playgroud)

就是这样,没有桌子:)


Kev*_*che 2

您可以使用登录控件的 CSS 友好控件适配器来更改它。

http://www.asp.net/CSSAdapters/Membership/Login.aspx