多语言:asp:label aganist html:标签与asp:Literal

时间:2009-04-23 09:53:56

标签: asp.net html

我正在为原型网站添加多语言支持。该网站是使用html标签开发的,我可以使用asp:literal多语言,或者我可以将它们全部更改为asp:标签,如下所示。

<asp:label ID="lblAddress1" runat="server" Text='<%$ Resources:lblAddress1 %>' /></br> 

<label><asp:Literal ID="Literal1" runat="server" Text="<%$ Resources:lblAddress1 %>"></asp:Literal></label>

Web的东西不是我的专业领域,这里的人不认为这样或那样有任何优势。你会选择什么?为什么?

2 个答案:

答案 0 :(得分:3)

<asp:Literal>

将此控件用作您希望在页面中插入的任何文本的占位符。输出不会包含在任何html标记标记中(最简单)。

<asp:Label>

使用此控件的方式与此控件相同,但是,此控件将文本包装在html标记中。这些span标签允许控件具有可以利用的附加属性(css样式等)。

<label>

此html标记在页面中具有语义值,用于将表单元素与其描述相关联。

<label for="SaveLoginName">Remember Me:</label>
<input type="checkbox" id="SaveLoginName" />

浏览器可以使用此信息提供其他辅助功能,例如启用单击文本以切换复选框值。

每个都有适当的使用场景。

答案 1 :(得分:1)

似乎是一种品味问题。虽然我认为第二个选项可能会给页面增加一点重量,因为文字通常包含在<span&gt;