この記事はHTML 4/XHTML 1でのhref 属性についての解説記事です。
HTML 5でのhref 属性に関する解説記事は、HTML 5 リファレンス内のHTML 5でのhref 属性をご覧ください。
href属性は、リンク先のURIを指定する属性です。
href属性はHTML 3.2からXHTMLまで、全てのHTML/XHTMLで利用出来ます。
href属性は
で利用出来ます。
尚、<base>要素にもhref属性がありますが、意味が異なります。
href属性の値はURIとされておりますが、一般には、
http://スキーム名等に続けてメールアドレスを記述する)mailto:スキーム名に続けてメールアドレスを記述する)などが値として利用されます。
javascript:スキーム名でスクリプトを指定する場合もありますが、この記述は非標準であり、JAVAスクリプトを実装していないか機能を停止している環境では問題が生じ得るため、使うべきではありません。href属性の値としてURIを記述する場合、URIにフラグメント名を併記する事があります。
具体的には、
href="http://www.uso800.ne.jp/uso/index.html#fragment"
と言うように、半角の#の後ろにフラグメント名を記述します。
このとき、参照先の文書型と記述に依り、以下の点に注意する必要があります。
参照先がHTML 3.2, HTML 4.01, ISO-HTMLなどの在来HTMLで記述されている場合、以下のように記述する必要があります。
在来HTMLではid属性は小文字は大文字に変換されて扱われると言う決まりになっております。
一方、href属性の値は大文字小文字を変更しません。
従って、href属性でフラグメント名を参照する場合には、必ず大文字に変換しないと当該フラグメントが見つからないという事になってしまうのです。
フラグメント名が<a>要素のname属性だけで記述されている場合は、上記のように勝手に大文字に変換してはいけません。
なぜなら、name属性の値は大文字小文字を変更しないからです。
XHTMLではid属性値を含む全ての識別子の大文字小文字を明確に区別します。
ですから、参照先がXHTMLで記述されている場合には、フラグメント名の大文字小文字を間違えないようにして下さい。
携帯電話では、更に電話機へのリンクも可能です。
すなわち、以下のようにすると、ウェブページから電話が掛けられるようになります。
href="tel:048-8XX-XXXX"
tel:スキーム名を電話番号の前に付けます。href="wtai://wp/mc;048-8XX-XXXX"
wtai://wp/mc;スキーム名を電話番号の前に付けます。