一部のブログの投稿には、href
の/
で始まる値を使用したリンクがあることに気付きました。
例えば:
<a href="/somedir/somepage.html">My Page</a>
先頭の/
は、パスがサイトルートから始まることを意味しますか?
つまり、サイトのURLがwww.mysite.com
の場合、有効なhref
値はwww.mysite.com/somedir/somepage.html
?です。
これはすべてのブラウザで受け入れられている規則ですか?
親または子の代わりに目的のURLが返されるように、/
でURLを開始することが重要です。
たとえば、ブラウジング/cream-cakes/
があり、そのページにblah.html
が含まれている場合は、スラッシュなしでページ/cream-cakes/blah.html
にアクセスしようとしますが、スラッシュがある場合はdomain.com/blah.html
になる最上位を意味すると仮定します。
一般的に、サイトの構造を変更するときは、意図したページが返されると仮定して正しいか間違っているかはわかりませんが、私の経験では常に/
を使用するのが最善です。
これはルート相対リンクです。これは相対リンク(../
に似ています)ですが、サイトのルートから始まります。サイトの3レベルの深さのページがスラッシュでリンクを開始する場合、パスの残りの部分はサイトのルートに関連します。
この形式のパスの利点は、マークアップの文字数が少ないことです。
http://example.com/page.html
対
/page.html
もう1つの利点は、ドメインの変更に対する移植性です。たとえば、example.com
コンテンツがexample.org
に移動された場合、同じディレクトリの命名/レイアウトが使用されていると仮定すると、ルート相対リンクは引き続き機能します。ページをローカルで開発し、Webにアップロードする場合に特に便利です。
他のタイプのパス-相対(../
)および絶対(http://...
)と同様に、これはファイルまたはディレクトリの名前が変更または移動されたときにリンクの更新を引き続き受けます。
この tutorial は、私の質問に対する答えがyesであることを示しています。
有効なhref
値は、実際にはwww.mysite.com/somedir/somepage.html
です。