[英]Are ASP.Net Control IDs bad for SEO and page size?
ASP.Net控件(例如asp:Label)生成凌亂的html id(例如ct100_ct100_Yabba_Dabba_Doo_FinallyTheRealId)。 是的,他們很難看,但今天有人告訴我他們也是:
我半信半疑,一半不相信。 我知道某些id名稱(例如“header”)是搜索引擎用來生成元信息的關鍵字,但我更懷疑id =“author”的跨度確實會影響SEO。 我願意承認我錯了。
在第2點),我至少90%持懷疑態度。 大多數頁面大小不是html字符,我真的想知道100個更長的ID是否會為頁面大小增加1kb。
我可以采用兩種方法之一。 你會采取哪種方法?
方法1)
<asp:Label id="lblAuthor" runat="server"></asp:Label>
代碼背后
protected void Page_Load(object sender, EventArgs e)
{
lblAuthor.Text = "Superman";
或方法2)
<span id="author"><%# Eval("Author") %></span>
代碼背后
public string Author { get; private set; }
protected void Page_Load(object sender, EventArgs e)
{
Author = "Superman";
一方面,1)不會產生令人討厭的ID。 另一方面,我總是討厭asp.net web表單中的無類字符串,並盡可能避免使用它們。 此外,如果一個頁面有30多個元素,我最終會有30個頁面屬性,這讓我感到不安。 (旁注:喜歡模型在MVC模式中的工作原理)。
我們正在使用.Net 3.5。
你怎么看?
謝謝。
方法3)
<span id="author"><asp:Literal id="author" runat="server" /></span>
代碼背后:
author.Text = "Dr. Seuss";
asp:Literal
就是這個名字所暗示的,一個只呈現你發送文本的控件; 不多也不少。
方法3)
<span id="author"><asp:Literal id="litAuthor" runat="server" /></span>
代碼背后
protected void Page_Load(object sender, EventArgs e)
{
litAuthor.Text = "Superman";
}
這解決了標簽問題。 祝其他元素好運;)
SEO:沒有
頁面大小 - 當然。 我的意思是,字符串更長,因此它們占用更多空間,因此頁面大小更長。
更新到.NET 4.0,然后您可以使用穩定的短ID覆蓋ID。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.