アプリ版:「スタンプのみでお礼する」機能のリリースについて

分からなかったので、もう一度質問させてください。

CSSフォルダーとA.htmlがあった場合、1つ下のフォルダーにA.htmlのファイルを移動した時に、CSSフォルダーを反映させるための方法を教えてください。
ルートパスという回答をもらったのですが、CSSの場合のやり方が分かりません。
何をどう変更すれば良いのでしょうか?
よろしくお願いします。

質問者からの補足コメント

  • つらい・・・

    後1日待って返事がなければ〆ます。

      補足日時:2015/10/20 23:44
  • HAPPY

    お礼を書いてからIDについて調べてみました。
    kon77さん以降の回答から順番にチェックしてたので遅くなったのですが、あなたの指摘が正解だったようです。
    CSSではないのですが、 / でリンクさせてみた結果IDの箇所が消えるのが分かったからです。
    ホームページのサーバー?によって違うみたいですね。
    これで理解出来ました。
    ありがとうございました。

    No.7の回答に寄せられた補足コメントです。 補足日時:2015/10/21 01:06

A 回答 (7件)

あと考えられる原因としては、サブディレクトリ型のサーバーやホームページスペースでやってらっしゃる事ぐらいでしょうか。



例えば、「example.com」というサブディレクトリ型のホームページスペースで借りた場合、「bbb」というID名やディレクトリ名で登録すると、「example.com/bbb/」が自分のホームページスペースになりますので、この場合は「"/bbb/css/skel.css"」の様な感じで書かないといけません。これがルートパスです。

あと、サーバーを引っ越す予定が無いなら、「http://example.com/css/skel.css」の様な感じで書くか、「//example.com/css/skel.css」の様な感じで書くと確実かと思います。ただ、ローカルでの検証が出来なくなります。
    • good
    • 0
この回答へのお礼

http://example.com/css/skel.css」の形はダメでした・・・
もしかしたら「bbb」なのかもしれませんね。
調べてみます。

お礼日時:2015/10/20 13:29

確認させて頂きたいのですが、何か変わったソフトやサービスやサーバーを利用していたり、あるいは、CMSやブログソフトウェアを利用していたりしますか?



ごく一般的なサーバーをレンタルして、普通に、ご自身で書かれたHTMLやCSS等を置いているだけですか?

何か変わったものを利用していませんか?

ご自身のサイトのURL等は書かなくてもよいですが、どういう環境でやっておられるのかを書くと、的確な回答が付くかも知れません。
この回答への補足あり
    • good
    • 0
この回答へのお礼

プロバイダーのサーバーで特別なソフトなどは使っていません。
HTML5のテンプレートは海外からのもです。
OSはwindows10で、maicrosoft edgeがHTML5との互換性を優先して開発されているとも書かれていているにも関わらず、何故下記回答で
「<link rel="stylesheet" href="css/skel.css" />
 それは、XHTML,XMLの仕様ですよ。(いまどきXHTMLはないでしょう。)」
というようなことが書かれるのかは、まったく理解は出来ていません。
正直、そんなことはどうでも良いのです。
現時点で、日本のフリーテンプレートとは遥かにデザインが優秀で比較にならないからです。

私はまったくの独学ですが、CGIも理解してCGIサーバーに設置することまでは出来ます。
ですから、これまでの回答を理解していない訳じゃないんです。
それでも知識は偏っているため、これまで今回のようなことは1つ下のフォルダーにもcss・js・images・fontsをコピーして毎回アップロードしていました。
ですが、今回はじめて「そんなめんどくさいことしなくて何か方法があるはず・・・」だと思い質問した訳です。
ネットで調べることもしましたが、独学の私には今回だけは質問した方が早いと感じたからです。

それに回答の途中で、head~/headまでの中身を載せましたが、/ を付けるだけならば、必要な位置に / を付けて回答してもらえればそれを張り付けるだけで済むとも思うのです。
それ以外に変更をする箇所があるのかどうかも、いまのところの回答では分かりません。

お礼日時:2015/10/20 21:45

>あちこち / を付けてみたんですが変化なしです・・


このこと                   ↓/>
<link rel="stylesheet" href="css/skel.css" />
 それは、XHTML,XMLの仕様ですよ。(いまどきXHTMLはないでしょう。)※(注)

 先の回答No.4をまったく読んで理解している形跡がないのですが・・
「さて、スタイルシートへのリンクですが、画像などとまったく同じで、相対パスか絶対パスを選択します。」
 と書いています。それが理解できていないと、画像もjavascriptもリンクできないですよ。
 ファイル相互間のパスはウェブ製作の基本中の基本です。
1) "./" は同じディレクトリ
2) "css"は同じ階層にあるcss
3) ../はひとつ上の階層
4) ../../は二つ上の階層
5) / はルート。そのサーバーのトップ
6) http://hoge.com はHTTP手順によってhoge.comサーバーを指定している。

>ルートパスという回答をもらったのですが、CSSの場合のやり方が分かりません。
 CSSだろうが、画像だろうがスクリプトだろうがすべて同じです。「CSSの場合」が特殊なわけではありません。

N0.4の回答を印刷して、何度も読んで試しながら徹底的に理解してください。

※(注) いまさらXHTMLとは・・
HTML5が持つ本当の意味 - @IT( http://www.atmarkit.co.jp/news/200801/25/html.html )
『空タグにもスラッシュを付けるだとか、名前空間を使うといったことも含みます――、そうした試みは、まったくうまく行きませんでした。』
    • good
    • 0
この回答へのお礼

HTML5のフォームを利用しているだけで、普通に見ることが出来れば良いんです。
初心者には分からないリンク先の議論などはどうでも良いことであって、A.htmlが1つ上のcss・js・images・fontsを反映させられれば良いだけなんです。
あなたは詳しく知りすぎて初心者の立場になっていないのではないかな・・・なんて思います。
たまに回答であるんですよ。
怒らないで読んでもらいたいのですが、<「CSSの場合」が特殊なわけではありません>の箇所で、どうしてCSSの箇所で分からないのかっていうところを考えて欲しいのです。(他では出来ます)
<「CSSの場合」が特殊なわけではありません>で言い切られたら、いくら説明をたくさんされても分からないんですよ。

すいませんがもう一度書きますけど、たったこれだけのことです。
そのたったこれだけのことが私には分からないのです。



「A.htmlが1つ上のフォルダーのcss・js・images・fontsを反映させられれば良いだけなんです。」

たくさん説明して頂いてるのに申し訳ないですね・・・
分からないものは分からないって、伝えるしかないんですよね。

お礼日時:2015/10/20 15:05

もうどうしてもわからないなら、A.htmlを移動した先に


cssフォルダごと一緒にコピーしてください
    • good
    • 0
この回答へのお礼

それぐらいは誰でも分かります。

お礼日時:2015/10/20 14:46

まず、製作者の立場になると「ホームページ」では伝わらなくなります。

ホームページとはご存知のようにブラウザを起動した時に最初に表示させるページ--すなわちホーム(基点,故郷,出発点---"GO! home"とか野球のホームベース)となるページ、派出してウェブサイトのトップページをいう。
ホームページ - Wikipedia( https://ja.wikipedia.org/wiki/%E3%83%9B%E3%83%BC … )

 この場合はウェブサイト,ウェブページですね。
 ウェブサイトを作成するときに、そのサイト内のウェブページでスタイルシートを使用して「構造とプレゼンテーションの分離( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」をすることで、すべてのページのデザインスタイルシートを書き換えるだけで一挙に変更できるようになります。
 この仕組みはとても重要です。
【引用】____________ここから
14.3 外部スタイルシート
 著者は、スタイルシートをHTML文書から切り離すことができる。こうすることには、幾つかの利点がある。
・著者及びWebサイト管理者が、複数文書間(及び複数サイト間)でスタイルシートを共有できる。
・著者が、文書に変更を加えることなくスタイルシートを変えられる。
・ユーザエージェントが、メディア記述子に基づき、スタイルシートを選択的に読み込める。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Style Sheets in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )]より

私のウェブサイトのディレクトリ構成を簡単に書くと
/   ルート
|-- index.html  トップページ(サイトのホーム)★3
|-- css/
|  |-- standard.css   基本スタイル
|  |-- sreen.css    スクリーンメディア用スタイルシート
|  |-- print.css     印刷用スタイルシート
|  |-- handheld.css   携帯(ガラケー)用
|   など
|-- images/    サイト全体で使用する画像
|  |-- Logo
|  |   |-- logo.gif
|  |-- background/
|     |-- sky.png
|-- prodacts/    製品ディレクトリ
|  |-- index.html  製品のトップ         ★2
|  |-- prodacts1/  個別カテゴリー
|  |   |-- index.html 個別カテゴリーのトップ ★1
|  |-- images/   このカテゴリーで使用する画像
|  |-- css/
|     |-- products.css /producs内で共通して使用するスタイル

とか・・・で成立しています。

さて、スタイルシートへのリンクですが、画像などとまったく同じで、相対パスか絶対パスを選択します。
 上記の例で言うと、すべてのページで使用されるロゴなどは、
<img src="/images/Logo/logo.gif" width="" height="" alt="">
 とされていれば、この部分を書き直さなくてもすべてのページで共通して使えますね。
 ただし、この方法をテストする事はローカルでは基本できません。
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 Windowsの場合、/(ルート)を指定するとそのドライブの先頭になってしまう。そりゃトップの /index.html★3 をドライブ直下に置けばできなくもないが、複数のサイトを作る事はできない。Windws以外ではエイリアス(別名)を指定するなりできるけど。
 Windowsの場合は、別途apacheなどウェブサーバーをインストールしてそれ経由でテストする事になる。たとえば、http://local.host/index.htmlとか・・・
 ★将来的にはローカルサーバーを導入することになるでしょう。

 となると、初心者にとって実用的な方法は、
/prodacts/prodacts1/index.html (★1)においては、
<img src="../../images/Logo/logo.gif" width="" height="" alt="">
/prodacts/index.html (★2)においては、
<img src="../images/Logo/logo.gif" width="" height="" alt="">
/index.html (★3)においては、
<img src="./images/Logo/logo.gif" width="" height="" alt="">

スタイルシートもまったく同じで、
/prodacts/prodacts1/index.html (★1)においては、
<link rel="stylesheet" type="text/css" media="screen" href="../../css/standard.css">
<link rel="styleSheet" type="text/css" media="print,handheld" href="../../css/print.css">

/prodacts/index.html (★2)においては、
<link rel="stylesheet" type="text/css" media="screen" href="../css/standard.css">
<link rel="styleSheet" type="text/css" media="print,handheld" href="../css/print.css">

/index.html (★3)においては、
<link rel="stylesheet" type="text/css" media="screen" href="./css/standard.css">
<link rel="styleSheet" type="text/css" media="print,handheld" href="./css/print.css">

となります。./css は、css/ でもよい。

ここから間違えやすいのですが、スタイルシート内で画像を指定している場合
たとえば、/css/screen.css にて
body{background-image:url("../images/background/sky.png");}
h1:before{content:url("../images/Logo/logo");}
の場合は、そのCSSからのパスになります。当然
prodacts/css/products.css からだと
body{background-image:url("../../images/background/sky.png");}
h1:before{content:url("../../images/Logo/logo");}

 文章で説明すると、こんなに長くなりますが、コンピューターってとってもお馬鹿で几帳面ですから、常にそのファイルからのパスになると考えればよいですよ。一見複雑そうに見えるが、実はとっても単純

★ローカルサーバーだと、こんなややこしい事考えなくて、ファイルがどこにあろうが---カレントがどこであろうが---、どこに移動しようが/(ルート)からのパスにできるので楽です。

 開発されているなら、ツールが豊富なfirefoxをお使いだと思いますが、その「Web 開発アドオン( https://addons.mozilla.org/ja/firefox/extensions … )」に、Server Switcher( https://addons.mozilla.org/ja/firefox/addon/serv … )があります。
ファイルマネージャ(エクスプローラ)からローカルファイルを見ている状態
fille:///D:\home\
から
http://local.host
そしてリモートの
http://hoge.com
にボタン一つで切り替えられます。
    • good
    • 0
この回答へのお礼

あちこち / を付けてみたんですが変化なしです・・・
変更する箇所は以下しかないと思うのですが。

<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="description" content="" />
<meta name="keywords" content="" />
<!--[if lte IE 8]><script src="css/ie/html5shiv.js"></script><![endif]-->
<script src="js/jquery.min.js"></script>
<script src="js/jquery.dropotron.min.js"></script>
<script src="js/skel.min.js"></script>
<script src="js/skel-layers.min.js"></script>
<script src="js/init.js"></script>
<noscript>
<link rel="stylesheet" href="css/skel.css" />
<link rel="stylesheet" href="css/style.css" />
</noscript>

お礼日時:2015/10/20 13:32

<noscript>


 <link rel="stylesheet" href="css/skel.css" />
 <link rel="stylesheet" href="css/style.css" />
</noscript>

上記の、
「"css/skel.css"」の部分に、「/」を足して、
「"/css/skel.css"」の様にすると良いかと思います。

ちなみに、サーバーにアップロードしないと正しく表示されません。

ローカルのパソコン上では、サーバーを動作させて、パスを通さない限り、正しく表示されません。
    • good
    • 0
この回答へのお礼

やってみたんですが、やっぱり文字だけですね。

お礼日時:2015/10/20 02:56

<link rel="stylesheet" type="text/css" href="/css/hoge.css">


のように絶対パスで指定してみては?
    • good
    • 0
この回答へのお礼

1つの下のフォルダーのA.htmlに
<noscript>
 <link rel="stylesheet" href="css/skel.css" />
 <link rel="stylesheet" href="css/style.css" />
</noscript>
のがありますけど、変更する箇所がないですね・・・

お礼日時:2015/10/20 00:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!