• ベストアンサー

headerをlink指定する方法

現在headerやfooterを各htmlのページに記述しているのですが, フレームを使わず,CSS等でLINK表示させるにはどうしたら一番よいでしょうか? 固定云々にはこだわりません。 現在のままではheaderやfooterの何かを書きなおしたい場合,サイト全ページ変更しなければいけなくなってしまいます。 と言うよりその書き直しの段階に来ているので,出来ればこれを機に1ページ編集したら変更表示させるようにしたいのです。 どうすればよいでしょうか? また,多くのサイトではどうしているのでしょうか? 教えてください。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • salonpath
  • ベストアンサー率48% (194/399)
回答No.2

置換で一発ですよ。 あと結局、「1ページ編集したら変更できるようにする仕組み」でサイトを作りなおさなきゃいけないんで、全ページ変更する事になりますよね。 とりあえずjavascriptでメニューを作るとか(お勧めはしません) wordpressなど導入するのがいいんじゃないでしょうか

Ryo_ss
質問者

お礼

回答ありがとうございます。 そうなんです。 今回結局全ページ変更しなければならないので,また同じことが起こった場合のことを考えてそれに向けた変更が出来ないものかと質問させて貰いました(なので,その方法がわからなくても全ページ編集しなければならないんです…)。 javascriptはやはりよくないのですか? 初めてサイトを作成した特に別サイトで質問させて貰ったときにも“javascriptはよくない”というような発言があり,自分で納得してそう思う前に言われてしまったのでそもそも使わないようにはしているのですが,その分学習も後回しになってしまって…。 無理にとは言いませんが,で…出来ればよい点と悪い点と簡単にでもいいので双方教えてもらってもよいでしょうか?(新しく質問しなおした方がよいでしょうか?…と言うより自分で知るべきですね。すみません) wordpressに関しては… まだ手付かずなので…とりあえず勉強します(苦笑) でも 手段がわかっただけでも良かったです^^ 検索や考慮範囲も広がりました。 回答ありがとうございました^^

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

  • salonpath
  • ベストアンサー率48% (194/399)
回答No.5

あ、え~っと javascriptが悪いものって意味じゃないです ただ今回のケースで重要なのは、 「今回は無理だけど出来れば次からの更新の手間を省きたい」だと思ったんです。 javascript(以下js)でメニューを作っても、 jsを実行できない環境でサイトを見てる人はリンクを辿れなくなるので(これがダメな理由1)、 jsがoffの時にhtmlの通常のメニューが表示されるような構造にしないと訪問者に優しくないですよね(ターゲット層にもよりますが、一般的に) そうしたら単純にhtmlとjsの手間が増えるだけで、あんまりよろしくないと。 あとのダメな理由は検索エンジンがちゃんとクロールできるか微妙ぽいからです、googleはjsが吐き出すソースの中をクロールできるみたいだけど、やっぱり読み取れないのもあるそうなので。 他にもダメな理由があるかもしれませんが、うちの知識だとこんな感じです。 そうゆうの関係なかったらjsでメニュー作ってもいいんじゃないでしょうか。

Ryo_ss
質問者

お礼

回答ありがとうございます。 今回の質問における重要点はその通りです。 javascriptに関しては それは“関係ない”で済ませられる範囲ではないですよね…(自分としてはですけど…)。 すぐには上手くいかないと思いますが… 結局のところは趣味サイトなんで,少しずつやっていきます^^ ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • abril
  • ベストアンサー率69% (388/560)
回答No.4

回答については既に色々出ていますので、蛇足です。 > フレームを使わず,CSS等でLINK表示させるにはどうしたら一番よいでしょうか? CSSが担う役目はその名(カスケーディング・スタイル・シート)の示す通り、HTMLのマークアップに対する「スタイル」を整える事のみです。 フレームや、他の方がお答えしているJavaScriptやPHP等を使用したインクルードの様に、マークアップ(HTMLコーディング)そのものをCSSファイルの中で記述しているわけではありません。なので、そもそもこの様なご希望を実現する機能は持ちません。 過去にも幾度か似た様な質問があり、結構CSSの出来ること/出来ない事が誤解されている様なのが気になったので、老婆心ながら書かせて頂きました。

Ryo_ss
質問者

お礼

回答ありがとうございます。 やっぱりそうですよね…。 現在書籍のデザインを参考にしつつ自分でアレンジを加えてサイトを造っているのですが,外部でimportしていたのでもしかしたら自分が思うようなことも…と思って…。 早い段階でわかってよかったです。 ありがとうございました^^

全文を見る
すると、全ての回答が全文表示されます。
  • salonpath
  • ベストアンサー率48% (194/399)
回答No.3

置換するアプリ http://dhive.jp/dhappli/grepreplace.html 簡単に複数のテキストファイルの中身に対して複数行の置換を行えるツールです。また、階層が深いディレクトリ構造でも、再帰的に置換作業を行うことが出来ます。 複数行に渡る文字列の検索・置換が可能なので、たとえば、WEBサイトのデータ(HTML)のような同じ内容を含んだファイルが大量にある場合などに対し、一括置換する事が可能です。

Ryo_ss
質問者

お礼

回答ありがとうございます。 と…とりあえず活用できるように…努力します! こういうのもあるんですね。知らないことだらけなのはわかっていましたが,さらに痛感です(苦笑) ありがとうございました^^

全文を見る
すると、全ての回答が全文表示されます。
  • LOHA
  • ベストアンサー率52% (203/388)
回答No.1

スクリプト系言語を使うことになると思います。 Javascriptを使う方法 http://tagland.net/technique/tech07.html PHPを使う方法 http://neta.ywcafe.net/000372.html CGI組んでやっている場合もあると思います。 参考までに。

Ryo_ss
質問者

お礼

回答ありがとうございます。 LINKを参考にやってみたいと思います。 ありがとうございました^^

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CSSの読み込み開始までラグがあります

    header.php、main.php、footer.phpの3ファイルを作成して、 index.phpに include './header.php'; include './main.php'; include './footer.php';などとして読み込ませました。 cssファイルは、header.phpの<head>に <link rel="stylesheet" type="text/css" href="header.css"> <link rel="stylesheet" type="text/css" href="main.css"> <link rel="stylesheet" type="text/css" href="footer.css"> の形で記述されています。 javascriptがあり、これも同様に<head>に記述されています。 以上のファイルはすべて同じフォルダ内にあり、これをlocalhostで表示させました。 これをchromeで要素を検証してみたところ、 cssの読み込み開始までに2秒近いラグがあります。 このラグの考えられる原因は何があるでしょうか。 どなたか心当たりのある方、教えてください。よろしくお願いします。

    • ベストアンサー
    • CSS
  • フレームありのページにリンクしてさらにそこに表示するHTMLも指定する

    まずフレームのなしのページ(以降A)からフレームありのページ(以降B)へリンクさせます。 そしてBは毎回違うものを表示したいのです。 そこで、今まではAのリンク先を常にBにしてBのフレームのソースを毎回書き換えてました。例えば以下のmain001.hrmlをmain002.htmlにしたりして。 <FRAME name="header" scrolling="NO" src="header.html" frameborder="NO" noresize> <FRAME name="main" src="main001.hrml" scrolling="AUTO" frameborder="NO" noresize> ですが、毎回このフレームのソースを買えるのではなく、 Aのリンクの記述を変えることでBのフレームのmainのHTMLを変更したいのです。 要はフレームのページへリンクしてさらにそこに表示するHTMLもリンクもとのページから制御したいのです。 できるんでしょうか? お願いいたします。

  • リンクターゲットの指定の仕方について教えて下さい。

    こんばんは。 いつもお世話になっております。 自分なりに調べてみたのですが、解決できないので 投降させて頂きました。 どなたか、ご指導頂けないでしょうか…。 大抵は、フレーム(上下分割など)で区切られた index.htmlのメインのフレームに、 フレームの名前(name="base"等)をつけ、リンクメニューを クリックでindex.html内の、base へ表示されますよね。 ですが、他の、フレーム分割されたページの (name="sita")へ飛ばせる事は可能なのでしょうか…? 【ページ構成・例・】 ■---index.html リンク文字1~12まで 計12Pリンク※インラインフレーム有り(name="frame") ■---bunkatu.html フレーム分割ページ  │---menu.html フレーム上  │---フレーム下 (name="sita") 【リンク構造】 ・リンク1~3 index.html 内の、インラインフレームに表示 ・リンク4~12 bunkatu.html 内の、フレーム下(name="sita")に表示 したい。 ※ リンク1~3 は、相対パス ※ リンク4~12 はhttp://から始まる絶対パス 。☆.。.:*・゜☆.。.:*・゜☆.。.:*・゜☆.。.  このような ↓ 【・リンク4~12 bunkatu.html 内の、フレーム下(name="sita")に表示 したい。】 ターゲット指定というのは、可能なのでしょうか…? 可能であれば、どのように記述すれば良いのでしょうか…。 どうかご指導よろしくお願い申し上げます。

    • ベストアンサー
    • HTML
  • CSSスタイルシート・疑似フレームでのターゲット指定リンク

     CSSのスタイルシートを使ったフレームページ風のデザインがありますね。(疑似フレーム)  フレームページであれば、ターゲットによってそのターゲットとなったページのみリンク先に飛べますが、CSSのスタイルシートでも再現できますか?  CSSのスタイルシートではidで別れていますが、どうすればできますかね?JavaScriptを利用すればできるという話を聞いたことはありますが、実際どうすればいいのかわかりません。方法とそのことが詳しく記載されたサイトなどを紹介して頂ければ幸いです。

  • PHP内にCSSを記述するメリット

    PHPを使用し、全てのページに同一のヘッダーとフッターを使う場合、 CSSやJavascriptをheader.phpや、footer.phpに直接記述してしまったほうが 作業効率、ソースの可読性、表示速度の面で優れいてるのではないでしょうか?

    • ベストアンサー
    • PHP
  • CSSでのリンク指定(?)

    現在、外部CSSで、<h1>タグの背景にタイトル画像を表示するように設定しています。 HTML上の<h1>タグ内では、タイトルに値するテキストを入れていますが、ブラウザの表示できない所においやってあります。 その表示されているタイトル画像(h1で表示している部分)に他ページへのリンクを設定したいのですが、こうした場合のリンク設定はどのようにすればよろしいのでしょうか? CSS内で設定することは可能なのでしょうか? それとも、HTML上でなんらかの形でリンク設定を行うものなのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 最近、HTMLのヘッダーをIDで定義(id="header")しているサイトが多いですが、なぜclassでなくIDで定義するのでしょうか?

    最近、CSSレイアウトを採用しているサイトの多くが、HTMLページのヘッダー部分やフッター部分をIDで定義(id="header"、id="footer")しています。 私は、IDというと、例えば身近には、住所や電話番号、免許書番号や銀行の口座番号等の、多くの場合は連番を用いた固有な値を使用するイメージがあります。 ところがHTMLでは、IDの値にheaderやfooter、さらにはwrapperやcontainer等の、通常ならIDの値として相応しくないような一般的な名詞が頻繁に使用されています。 classの値であれば、そのような一般的な名詞もうなづけますし(というよりclassに固有な値は逆に奇妙かも)、スタイルシートを適用するだけなら、classだけでも十分可能だと思いますが、なぜIDを使用するのでしょうか?とても不思議です。

    • ベストアンサー
    • HTML
  • 左右2カラム時の、headerの使い方

    お世話になります。 現在HTML5を勉強しているのですが解らない点が出てきてしまったので、 お教えいただければ幸いです。 左右2カラムのサイトを作ろうとしています。 良くある上と下にヘッダ部分とフッター部分があり、中央部分が2つに分かれているものではなく、 ヘッダー部分とフッター部分が画面構成的には無いデザインにしたいと思っています。 (左側のカラムにナビゲーション。右側のカラムにメインコンテンツ) 上の様なデザインのサイトで、HTML5で構造を示す際の記載ですが、 <header></header> <footer></footer>は、記載はしておくが、 中身には何も書き込まない形にするのが良いのでしょうか? それとも、そもそもheaderタグも footerタグも書き込まないのが良いのでしょうか? 理由と共にお教えいただければ幸いです。 宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • フレームname指定するとリンクできない??

    単純に左右にフレーム分けしたH.P.を作っています。 順調に組み立ててきたのですが、右枠(メイン)内に表示する為用意したファイル3つ同士で、1p.へのリンクができなくなってしまいました。 1p.→1,2,3、他へのリンクOK 2&3p.→1×   →2,3、他OK ソース記述はファイル名を入れ替えて確かめたので間違いなくリンクできるはずなのですが 1p.のファイル名にすると(<a href="---1.html">~</a>)更新時に設定してあるサウンドも鳴りません。 違う所といえば1p.側はフレームを作った際に <frame src="---1.html" name="sheet">と指定してあるぐらいです。 この指定をする時は他のページからも何か記述が必要なのかと予想してみましたが、うまくリンクさせるにはどうしたらよいでしょうか? 宜しくお願いします。

    • ベストアンサー
    • HTML
  • スクロールボックス内へリンク

    CSSをつかって、スクロールボックスをつけましたが、ボックス内へのリンクの仕方が分かりません。 たとえば、アイフレームのように外部からターゲット指定してフレーム内にリンクするように、疑似アイフレームとしてのこのスクロールボックス内にリンクするための記述を教えてください。 イロイロと調べましたが、もしかしたらアイフレのように指定してリンクさせる事はできないのか?となやんでおります。 更新時、すべてのページのメニューの変更をするのがおっくうなため、アイフレを使用していたのですが、それをフレームではなくボックスで出来るなら、その方がいいかと思って挑戦しています。 お時間のある方でおわかりになられる方、ご教授ください。 また質問の仕方が悪ければご指摘お願いいたします。