
Dreamweaver 8を使用してサイトを構築しています。
サーバーはSAKURAサーバを使用しています。
次のようなディレクトリでサイトを構成しており、テンプレートフォルダはもちろんルートにあります。
------------------------------------------------------------
index.html
about.html
~~~.html
main.css
Templates(フォルダ)
L main.dwt
img(フォルダ)
L hoge.jpg
item(フォルダ)
L test.html
------------------------------------------------------------
item内の「test.html」には「main.dwt」のテンプレートが適用されています。
そこで、main.dwtの相対パスでmain.cssの読み込みを次のように記述しており「<link rel="stylesheet" type="text/css" href="../main.css">」今まで問題なかったのですが、先日、ある事に気づきました。
それは①であれば問題ないのですが、②であればcssが効かなくなり表示が崩れます。
①https://www.hoge.co.jp/item/test.html
②https://www.hoge.co.jp/item//test.html ・・・スラッシュを二重にしている
通常はスラッシュを二重にすることなどなく、またそのようなURLで辿りつくひとも居ないでしょうが、googleのサーチコンソールを確認すると②と同じような体裁で二重スラッシュのあるURLが重複ページとして多数警告を受けており、今回の質問に至った次第です。
通常、スラッシュが二個以上ある場合は一つのものとサーバは認識するようですが、私のサイトでは二重スラッシュをつけると表示が崩れてしまいます。
それで、相対パスの設定が誤っているのかと色々ためしたところ、test.htmlのテンプレートを一旦解除し、CSSの読み込みを「href="/main.css"」にし、Upしたところ、ページは表示崩れをおこしていなく、また上記②のように二重スラッシュをつけても問題なくCSSが適用されている状態でページが表示されるようになりました。。。ちなみに「href="main.css"」では表示がくずれます。
しかしこれは本来のパスではなく、main.cssのある階層は「test.html」からみれば一つ上です。
また、/main.css にパス変更するとF12でのブラウザプレビューではCSSが適用されておらず、今度はこちらの表示が崩れてしまいます。
本来であれば、ひとつ階層が上のファイルを読みに行くので、../main.css にすべきなのは明確なのですが、webにアップすると「/main.css」でも正常に読み込まれ、また二重スラッシュを用いても一つのスラッシュとみなされて正常に表示されます。。。なぜに「/main.css」でもcssが正常に読み込まれているのか理解できていません。
上記につきまして、お気づきの点がございましたらご回答いただけましたら幸いです。
以上、何卒よろしくお願い申し上げます。
No.1ベストアンサー
- 回答日時:
「/main.css」は
ルートから見たときのパスを表します。
つまり、http://www.hoge.co.jp/
またはhttps://www.hoge.co.jp/
を基準として、そこからのパスなので、
「www.hoge.co.jp/main.css」という位置を示しています。
これは下層にあるどんなファイルも、www.hoge.co.jp/main.cssを読みに行く、ということです。
階層がどんなに深くても一番上のディレクトリからのパスを探すので、表示が崩れない、ということになります。
それに対して、
>「href="main.css"」では表示がくずれます。
というのは、「./main.css」と同じ意味です。
test.htmlと同じ階層にあるmain.cssを探しにいくので、表示が崩れてる、ということになります。
「/」「./」「../」といった書き方があります。
相対パス、ルート相対パスについて、一度調べてみてください。
なるほど!
ルート相対パス、知りませんでした。
となると、upしたときの挙動が理解でき、またDWでは表示が崩れてしまうのもわかるようです。
詳しく調べてみます。
ご回答、誠にありがとうございました!
No.2
- 回答日時:
相対パス指定 "../main.css" は、
表示中のページ URL で一つ上の階層から読みます
一つ上の階層とは、
ご提示のスラッシュ二重 URL では名前のない階層があるため
xxx://hoge.example.com/item// ← 表示中のページ URL の階層
xxx://hoge.example.com/item/ ← 一つ上の階層
このためブラウザはファイルを取れず表示崩れする
絶対パス指定 "/main.css" は、
表示中のページ URL で最上位の階層から読みます
最上位の階層とは、
URL のサーバー名部分までのことなので
xxx://hoge.example.com/item// ← 表示中のページ URL の階層
xxx://hoge.example.com ← 最上位の階層
このためブラウザはファイルを取れる
ただし、サイトに上げる前のブラウザプレビューでも同様に処理されるので
file://localhost/Users/you/docs/web/item/ ← 表示中のページ URL の階層
file://localhost ← 最上位の階層
おそらくこの階層にファイルが無いのでブラウザは表示崩れする
絶対パス指定のページは、ローカル環境では試験用サーバーを経由させるなどの工夫が無いと表示できなくなるので、ご注意ください
余談ではありますが、
Dreamwaver ならばテンプレートの相対パスを適示補正してくれるようです
https://helpx.adobe.com/jp/dreamweaver/kb/228553 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- SEO googleサーチコンソールで、重複URLが多数発生、その修正方法について 2 2023/06/23 16:15
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- SEO googleサーチコンソールでの重複ページ(ダブルスラッシュ) 3 2023/06/12 15:00
- HTML・CSS HTMLを正しく表示させるには 2 2023/06/18 09:12
- HTML・CSS CSSでサイトの背景に画像を組み込みたいのですが反映されません 2 2022/11/22 16:21
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- HTML・CSS CSSが上手く反映されないみたいです 2 2022/11/21 16:19
- HTML・CSS Chrome のキャッシュについて 3 2022/05/26 07:50
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
-
ピンとくる人とこない人の違いは?直感を鍛える方法を心理コンサルタントに聞いた!
根拠はないがなんとなくそう感じる……。そんな「直感がした」という経験がある人は少なくないだろう。ただ直感は目には見えず、具体的な説明が難しいこともあるため、その正体は理解しにくい。「教えて!goo」にも「...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
cssファイルの名称付け
-
Dreamweaver のテンプレートで...
-
CSSを最近始めました。実は、2P...
-
ディレクトリ構成【「common」...
-
範囲指定印刷での位置(css)
-
スタイルシート(CSSスタイル)...
-
定数の定義とかはできますか?
-
ワードプレスで太字が反映され...
-
cssが反映されません
-
ブラウザでプレビューでCSSが反...
-
jspにcssを反映させるには
-
エクセルファイルにCSSを読み込...
-
CSSファイルを入れるフォルダは...
-
outlook 文字を揃えたい。tab...
-
マイクロ(μ)の文字を半角で出...
-
教えてください。
-
リストの前後の行間をなくす方...
-
SELECTのプルダウンの長さの調整
-
Excel VBAで文字列の可視長を得...
-
EXCEL VBA 印刷プレビューダイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cssファイルの名称付け
-
ディレクトリ構成【「common」...
-
サイトを作る時のcssファイルは...
-
Dreamweaver のテンプレートで...
-
jspにcssを反映させるには
-
CSSファイルを入れるフォルダは...
-
エクセルファイルにCSSを読み込...
-
cssで、ボタンのテキスト部分を...
-
ブラウザでプレビューでCSSが反...
-
定数の定義とかはできますか?
-
複数のhtmlで同じcssファイルを...
-
スタイルシート(CSSスタイル)...
-
一部のページにデフォルトCSSを...
-
CSSによる簡易な複数言語対応に...
-
css の適用について
-
HTMLの CSSのファイルというの...
-
スタイルシートを取り込みたい
-
HTMLコーダーをやっています。...
-
CSSを最近始めました。実は、2P...
-
a:link で指定した色にならない
おすすめ情報
明日は大幅なテンプレートの修正と、一斉置換の日となると思います。
SEOを少々齧っており、なぜ今までダブルスラッシュのエラーがなかったのかというのは、それはよくある勉強不足のミスでgoogle側が許容していたのだと思います。
そして今はそれが厳しくなってきたのだろうと。
諸々、厳しくなってきますね。
やっと修正が終わりました!
お二方のおかげです。ありがとうございました!
二重スラッシュの問題も解決しAnother HTMLでチェックしても問題はありませんでした。これでgoogleコンソールの重複ページエラーも解消されるはずです。
修正方法は、
まず、Dreamweaverのサイト管理のローカル情報で、「ドキュメントルート」から「サイトルート」に変更をしました。次にライブラリ修正、テンプレート、そしてベタ打ちコードの順で置換修正を行いました。ひたすら「./」を検索、そして適切な階層へ、その修正の繰り返しです。
あとの問題としましては、
やはりF12のブラウザプレビューが効かない点です。補正するとの情報を頂きましたが私の環境では補正できず、表示が崩れてしまいます。
この点でなにかご存じの方がおられましたら引き続きご教示いただけましたら幸いです。
以上、よろしくお願い申し上げます。
質問を締め切らさせていただきます。
お二方、ほんとうにありがとうございました!
/
./
../
が、今も頭をくるくるまわっています;w