HTML の相対パス (Relative Path) と絶対パス (Absolute Path) の詳細な理解

HTML の相対パス (Relative Path) と絶対パス (Absolute Path) の詳細な理解
私は 1 年以上 Java Web 開発に携わっており、HTML または JSP ページの作成は避けられません。Web アプリケーションの強力な機能は、ハイパーリンク (Hyper Link) にあります。たとえば、ページ a はページ b を指すリンク アドレス (つまり URI) を保存しますが、問題はまさにここにあり、ファイルを正しく参照する方法です。たとえば、HTML ページ内のハイパーリンクとして別の HTML ページを参照するにはどうすればよいでしょうか。 Web ページに画像を挿入するにはどうすればいいですか? ......
また、相対パスはStrutsで非常に人気があるため、注意しないと混乱しやすくなります。

ファイル参照(ハイパーリンクの追加や画像の挿入など)時に誤ったファイルパスを使用すると、参照が無効になります(リンクされたファイルが参照できない、挿入された画像が表示されないなど)。

これらのエラーを回避し、文書を正しく引用するために、今後の参考のために違いと使用法を書き留めておきました。

HTMLにはパスの記述方法が2つあります。相対パスと絶対パスです。

HTML相対パス
同じディレクトリ内のファイル参照 ソース ファイルと参照ファイルが同じディレクトリにある場合は、参照ファイル名を記述するだけです。

ここで、ソース ファイル info.HTML を作成し、info.HTML 内のハイパーリンクとして index.HTML ファイルを参照します。

info.HTML へのパスが d:\tomcat\webapps\hello\blabla\info.HTML であると仮定します。
index.HTML へのパスが d:\tomcat\webapps\hello\blabla\index.HTML であると仮定します。
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "index.HTML">index.HTML</a>

親ディレクトリを指定する方法
../ はソース ファイルの親ディレクトリを表し、../../ はソース ファイルの親ディレクトリを表します。

info.HTML へのパスが d:\tomcat\webapps\hello\blabla\info.HTML であると仮定します。
index.HTML へのパスが d:\tomcat\webapps\hello\index.HTML であると仮定します。
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "../index.HTML">index.HTML</a>

info.HTML のパスが d:\tomcat\webapps\hello\blabla\wowstory\info.HTML であると仮定します。
index.HTML へのパスが d:\tomcat\webapps\hello\index.HTML であると仮定します。
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "../../index.HTML">index.HTML</a>

info.HTML へのパスが d:\tomcat\webapps\hello\blabla\info.HTML であると仮定します。
index.HTML パスが d:\tomcat\webapps\hello\wowstory\index.HTML であると仮定します。
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "../wowstory/index.HTML">index.HTML</a>

サブディレクトリの表現方法<br />サブディレクトリ内のファイルを参照するには、サブディレクトリ ファイルのパスを記述するだけです。

info.HTML へのパスが d:\tomcat\webapps\hello\blabla\info.HTML であると仮定します。
index.HTML へのパスが d:\tomcat\webapps\hello\blabla\HTML\index.HTML であると仮定します。
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "HTML/index.HTML">index.HTML</a>

info.HTML へのパスが d:\tomcat\webapps\hello\blabla\info.HTML であると仮定します。
index.HTML へのパスが次のとおりであると仮定します: d:\tomcat\webapps\hello\blabla\HTML\tutorials\index.HTML
info.HTML 内の index.HTML にハイパーリンクを追加するコードは、次のように記述する必要があります。

コードをコピー
コードは次のとおりです。

<a href = "HTML/tutorials/index.HTML">index.HTML</a>

HTML 絶対パス
HTML 絶対パスは、ドメイン名を含むファイルの完全なパスを指します。

ドメイン名 www.jb51.net を登録し、仮想ホストを申請したとします。仮想ホスト プロバイダーは www などのディレクトリを提供します。この www は Web サイトのルート ディレクトリです。

www ルート ディレクトリにファイル index.HTML があるとします。このファイルの絶対パスは https://www.jb51.net/index.html です。

たとえば、www ルート ディレクトリに HTML_tutorials というディレクトリが作成され、このディレクトリに index.HTML ファイルが配置されているとします。このファイルの絶対パスは https://www.jb51.net/article/32759.htm です。

<<:  クールなバーコードエフェクトの作り方を教えます

>>:  JavaScriptはXiaomi Mall公式サイトの完全なページ実装プロセスを模倣します

推薦する

JavaScript における call、apply、bind の実装原則の詳細な説明

目次序文電話使用法成し遂げるシンプルな実装バージョン:アップグレード版:適用する使用法成し遂げるバイ...

Linux 向けの強化されたスクリーンショットと共有ツール: ScreenCloud

ScreenCloud は、必要だとは思わなかった素晴らしい小さなアプリです。デスクトップ Lin...

2015-2016年に主流となるインタラクティブ体験のトレンド

5月の最も重要なインタラクティブデザイン記事!今年、Baiduのデザイナーは体験の観点から出発し、大...

時刻を保存するために適切な MySQL の datetime 型を選択する方法

データベースを構築してプログラムを書くとき、日付と時刻の使用は避けられません。データベースには、ti...

仮想マシンクローン Linux centos6.5 システム ネットワーク カード構成グラフィック チュートリアル

Linux システムに触れたばかりの初心者として、VMware 仮想マシンに CentOS6.5 シ...

MySQLの空の値とnull値の違いを知っていますか?

序文最近、友人がSQLを書くときにnull値を判定する方法が間違っていて、プログラム内のデータにエラ...

node.js で EventEmitter をカスタマイズする方法

目次序文1. 何ですか2. Node.jsでEventEmitterを使用する方法3. 実施プロセス...

Vueシャトルボックスは上下の動きを実現します

この記事の例では、vueシャトルボックスを上下に動かすための具体的なコードを参考までに共有しています...

MySQL アカウント情報をエレガントにバックアップする方法

序文:最近、インスタンスの移行の問題に遭遇しました。データの移行後、データベースのユーザーと権限も移...

ブラウザの自動更新を実装するReactサンプルコード

目次フロントエンドルーティングとは何ですか?フロントエンドルーティングを実装するにはどうすればいいで...

Windows 10 で MySQL 8.0.12 の解凍バージョンをインストールして構成する方法 (グラフィック チュートリアル付き)

この記事では、MySQL 8.0.12 の解凍版のインストールと設定方法を記録し、皆様と共有します。...

Vue の共通 A​​PI と高度な API の概要

目次次のチェックミックスイン$強制更新設定、削除フィルター指令その他の単純な共通プロパティとメソッド...

Javascript配列の重複排除のいくつかの方法の詳細な説明

目次アレイ重複排除1 2層forループ(バブルソートの2層ループ記述に類似) 2 ループとインデック...

Ubuntu16.04にclionをインストールするプロセス全体と手順の詳細な説明

CLion のプロセス全体を最初から説明します。CLion は、JetBrains がリリースした新...

jQuery は拡張アニメーションによるナビゲーション バー効果を実装します

展開アニメーション効果のあるナビゲーションバーを設計してカスタマイズし、デモを作成してみました。設計...