2011-04-28 47 views
1

在一個HTML 4.01 Transitional文檔中,是否違反了標準,指定鏈接href而不轉義空格字符?在<a>鏈接中有未轉義的href URI是否違反標準?

例如此鏈接

<a href="http://example.com/some page.html">Some page</a> 

,而不是

<a href="http://example.com/some%20page.html">Some page</a> 

我不能輕易從http://www.w3.org/TR/html40/struct/links.html#h-12.1.3工作了,也許你一個人可以指教?

+0

+1如果有人在看到這個問題的答案之前讓我猜,我會猜錯了。 – 2011-04-28 10:21:23

回答

3

在HTML 4.01 Transitional文檔中,是否違反了標準,指定鏈接href而不轉義空格字符?

是的。如RFC1630,RFC1738和RFC1808中所定義的href attribute,takes a URI

RFC1738說:

空間 字符是不安全的,因爲顯著的空間可能會消失,當URL被轉錄或 排版或遭受的文字處理程序處理,可以引入 微不足道的空間。

所有不安全的字符必須在URL中進行編碼。

+0

非常感謝您的回覆。 – 2011-04-28 10:51:49

2

href屬性值is a URI,如RFC 2396中所述。

它說(第2.4.3節排除US-ASCII字符):

空格字符被排除在外,因爲顯著空間可能 消失,並可能引入顯着的空間時,URI是 轉錄或排版或受到字 處理程序的處理。

所以,你必須編碼空間。

+0

謝謝,非常有用。 – 2011-04-28 10:18:06

相關問題