href

base 要素 href 属性 (HTML)

[9] HTMLbase 要素の href 属性は、その HTML 文書内の相対URI参照を解決する際に使用する絶対URI を指定します。

仕様書

属性値

[4] href 属性値は、 valid URL potentially surrounded by spaces でなければなりません >>2

[5] href 属性には、多くの場合に絶対URL が指定されますが、相対URLを指定することもできます。

文脈

[3] base 要素に指定できます。 base 要素は、 href 属性target 属性の一方または両方を持たなければなりません >>2

[26] href 属性base 要素は、 URL属性値として持つ他の要素よりも前になければなりません >>2

処理

[13] baseURLの解決を参照。

HTMLBaseElement インターフェイス href 属性

[7] HTMLBaseElement インターフェイスhref IDL属性取得器は、 次のようにしなければなりません >>6

  1. [22] CEReactions の開始の処理を実行します。
  2. [8] 文書を、文脈オブジェクト節点文書に設定します。
  3. [14] を、文脈オブジェクトhref 属性値に設定します。
  4. [15] null なら、
    1. [16] を、空文字列に設定します。
  5. [17] URL を、 に、 文書フォールバック基底URL文書文字符号化について、 URLの構文解析器を適用した結果に設定します。
  6. [20] CEReactions の終わりの処理を実行します。
  7. [18] URL失敗なら、
    1. [19] を返します。
  8. [21] URLURLの直列化を適用した結果を返します。

[23] 同じく設定器は、次のようにしなければなりません >>6

  1. [35] を、指定された値を文字列として解釈した結果に設定します。
  2. [33] CEReactions の開始の処理を実行します。
  3. [36] 文脈オブジェクトhref 属性値を、に設定します。
  4. [34] CEReactions の終わりの処理を実行します。

歴史

[10] 仕様書:

[11] この属性は %URI (絶対URI参照) で、 SGML 的には CDATA です。 更に仕様書本文で絶対 URI に限定されています HTML 2.0, HTML 4

HTML 4 仕様書は素片識別子について全体的に曖昧で、 base href に素片識別子を含めて構わないのか否かは不明です。 (あってもなくても機能的に変わらないのですが。)

RFC 1866 (HTML 2.0) も曖昧なところはありますが、 こちらは素片識別子は含まない絶対 URI である可能性が高そうです。

[12] 省略の可否:

HTML 2.0 (RFC 1866)
必須。
HTML 4 Strict
必須。
HTML 4 Transitional
省略可能。 (その場合 target がないと base が意味を成さないのですが、仕様書には言及がありません。)
XHTML 1.0 FE
省略可能。
XHTML 1.0 SE Strict
必須。

[24] <base href> and xml:base="" and HTMLBaseElement.href (2008-07-01 22:43:30 +09:00 版) <http://suika.fam.cx/~wakaba/-temp/test/html/base/href/relative-xmlbase-1.xhtml>

[25] >>24

Firefox 2
xml:base is applied to compute reflected DOM attribute value. (However, xml:base does not affect to base URI computation for base href; relative URL in base href is simply ignored.)
Opera 9
xml:base is applied to compute reflected DOM attribute value. (xml:base on base doss also affect to base URL of the document.)
Safari 3.1
href DOM attribute takes the same value as the href content attribute for base elements. (xml:base on base dose not affect to the base URL of the document.)

[1] Correct URL parsing of base elements · whatwg/html@2719a51 ( 版) <https://github.com/whatwg/html/commit/2719a514ebd2ee66813fb5ee92f52e99a1479e78>