哪个更好跨越runat服务器或默认的asp标签?

我有一个简单的asp.net网页,其中包含一个大约5
TR
的表,每行有2个
TD
..在页面加载中我获取用户数据(5属性)并在此页面中查看它们以下是前2行:
 <table>
    <tr>
        <td>
            FullName
        </td>
        <td>
            <span id="fullNameSpan" runat="server"></span>
        </td>
   </tr>
   <tr>
        <td>
            Username
        </td>
        <td>
            <span id="userNameSpan" runat="server"></span>
        </td>
   </tr>
</table>
我总是用
<asp:Label
按代码设置值,但我总是注意到标签在运行时转换为
span
所以我决定用户
span
让他
runat=server
被代码访问,所以 哪个更好用
asp:label
span
runat=server
??     
已邀请:
答案是:无论什么最适合你。 asp控件具有与html控件不同的对象模型。例如,html控件没有数据绑定。 编辑: 需要考虑的是你是否需要一个span元素。 Span是一个用于内联项的html元素,canoot可以保存其他项(例如块项)。如果您的html标记在语义上包含跨度(例如您希望以特定方式设置文本样式),则使用它。 除非您需要控制span标记上的属性,否则最好这样做:
<span class="foo"><asp:Literal id="litFoo" runat="server" /></span>
如果您需要专门修改标签本身(不一定只是它的内容),您应该只生成一个元素runat =“server”。例如,如果您需要在运行时隐藏span,那么您可以使用span_11ѭ,以便在运行时访问它的Visible属性。否则,它应该保留为标准html。     
如果您所做的只是显示某些内容,那么最好使用文字标记,这样就不会增加额外的标记。事实上99%的时间字面值应该用在标签上。 编辑:标签/跨度之间的表现将是如此微小,如果它们之间有任何差异,那么你担心这种表现的唯一原因就是如果你是Facebook。     

要回复问题请先登录注册