勉強のため、struts + Eclipseを使用して、JSP
を作成しているのですが、<link>タグを使用して
スタイルシートを読み込みたいのですが、うまく
いきません。(1)のURLでJSPを表示するとうまくい
くのですが、イベントを実行(submit)すると、URL
が(2)に変更されてしまい、読み込めません。
URL(1)
http://localhost:8080/aa/bb/cc/dd/index1.jsp
URL(2)
http://localhost:8080/aa/index1.do
現在、<link>タブは相対パスを指定しているの
ですが、パスを絶対パスに変更すればうまくいき
ます。
変更前(相対パス指定)
<link href="../style.css"・・・>
変更後(絶対パス指定)
<link href=
"http://localhost:8080/aa/bb/cc/style.css"・・・>
他にスタイルシートを読み込む方法はございません
でしょうか。よろしくお願いします。
No.3ベストアンサー
- 回答日時:
解決したと思いますが、誤った書き込みがあるので訂正します。
>JSP は一度、コンパイルされて、ワークフォルダに実体(.java)ができますから、表示されている JSP の実体がある場所がカレントパスになります。
>こういった事象は、カレントパスの誤認識のせいで起こる場合があります。
の部分は間違いです。
linkタグで指定されたCSSの場所はJSPやサーブレットが解決するわけではなく、ブラウザが解決します。なのでJSPの実体のパスなどは無関係で、カレントパスの誤認識等で起こるわけではありません。むしろ正常な動作です。
URL(1)でアクセスした場合、ブラウザは「http://localhost/aa/bb/cc/dd/」をカレント(現在地)と見なします。
しかし、URL(2)でアクセスした場合、ブラウザは「http://localhost/aa/」をカレントと見なすため、CSSのパスが相対パスで指定された場合、両者のCSSは全く違うものを指すことになります。
No.2
- 回答日時:
base 要素で相対パス解決の起点を指定してみてはいかがでしょうか。
No.1
- 回答日時:
JSP は一度、コンパイルされて、ワークフォルダに実体(.java)ができますから、表示されている JSP の実体がある場所がカレントパスになります。
こういった事象は、カレントパスの誤認識のせいで起こる場合があります。
私は、CSS ファイルに関しては、いつもルート('/')から指定するようにしております。
例:
<link rel="StyleSheet"
href="/project/jsp/common/style.css"
type="text/css">
ルートパスはシステム毎の設定(構成)で変わりますので、ルートパスさえしっかりと把握できれば、このやり方でできると思います。
返答ありがとうございました。ご指摘した通りでした。
<link>タブのパスをルートからに変更し、workフォルダ
に格納した所、読み込む事に成功致しました。凡ミス
です。ご指摘ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS Dreamweaver のテンプレートでの相対パスの設定について 2 2023/06/13 17:28
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- Windows 10 WIN10(MAC-bootcamp)で 起動時のパスWが どうにもならない 2 2023/06/30 11:40
- その他(プログラミング・Web制作) Python - Excel で Webからデータを連続取得したいのですが エラーが出ます 1 2023/07/06 20:08
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- HTML・CSS PrettierのHTMLの記述変更 linkタグ 1 2022/06/23 04:06
- その他(プログラミング・Web制作) Pythonを勉強しています。 5 2023/08/25 09:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSP使用によるスタイルシート読...
-
IIS環境でJAVAを使用したい
-
ソースパスとクラスパスの違い...
-
LaTeXでのアンダーバーの入力
-
TOMCAT_HOMEって?
-
Eclipse3.5EEでJavaのコンパイ...
-
TeXで図を挿入できません.助け...
-
javaが文字コードの影響でコン...
-
コンパイル出来ない
-
サクラエディタでjavaのプログ...
-
TEXについて
-
Eclipseで、プロジェクト名のと...
-
Eclipseのアンインストールの仕方
-
html上で、バッチやexeファイル...
-
正しいURL指定しているにもかか...
-
vs codeはオフラインでも使用で...
-
Javascriptの値をJava(JSP)へ渡...
-
Eclipse(JAVA)のデバッグで他...
-
コミット前の更新データをチェ...
-
Tera Term ネットワークに到達...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.jarファイルの中身って書き換...
-
javaが文字コードの影響でコン...
-
コンパイルエラーに出てくる、i...
-
IIS環境でJAVAを使用したい
-
javax.servlet は存在しません...
-
サクラエディタでjavaのプログ...
-
Eclipse3.5EEでJavaのコンパイ...
-
javaの簡単なソースがコンパイ...
-
eclipseの構文エラーについて
-
TeXで図を挿入できません.助け...
-
「識別子がクラス名でも名前空...
-
TOMCAT_HOMEって?
-
JAVAでC/C++の条件コンパイルの...
-
ソースパスとクラスパスの違い...
-
Log4jのインストール
-
Javaのコンパイル結果が表示さ...
-
dokojavaのコンパイルについて
-
-deprecationとは?
-
日本語対応 逆コンパイラについて
-
システム環境変数と、ユーザー...
おすすめ情報