今だけ人気マンガ100円レンタル特集♪

WEBサイト作成入門テキストを一冊読み終えたばかりの初心者です。
次ステップとして、好きなサイトのソースコードを書き写して勉強するのが良いと聞き
元となるサイトを探していたら、タイトルの通りトップページ以外の
どのページを開けても同じULRになっているものを見かけます。

あれはどのように実現しているのでしょうか。
高度な技術を駆使しているのですか?
難しすぎてお手本として不適切だったら避けようと思いますが
いいなぁと思うサイトが多いので質問させていただきました。

ご存知の方がおられましたら教えてください。
よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

回答があるとおり、フレームも一つの方法です。


ただ、デザインとしてはお勧めできませんし、HTML4.01からは非推奨です。
インラインフレームなどを使うことになりますが、実際に使い方としてはすこし変わってきます。

最近はAjaxを使ったサイトも多く、これらの場合はJavaScriptを使ってバックグラウンド通信を行い、HTMLを動的に書き換えています。
HTML自体の書き換えですので、ページの切り替えは不要になります。
インクリメンタル検索(文字を入力するとすぐに検索が行われるヤツ)もこれらの技術を使っています。
今後HTML5/CSS3がメインになっていくと、これらの各属性を有効に使うためにもAjaxライクな使われ方が増えると思います。

他にはサーバサイドスクリプトを使ったサイトで、メソッドとしてPOSTを使った場合はアドレスが変わらないこともあります。

どれをどのように使うかは作成する人の裁量ってことです。
ただ、どれもある程度知っていないとこれからのサイト作成についていけなくなります。
今すぐにとは言いませんが、後々は(作れるかは別として)構造はわかるようにしておいたほうがいいかもしれない。
    • good
    • 0

先に示されたフレーム以外の手法を3つほど



1.CGIやPHP と DirectoryIndex を使用する
要するに index.html のようにファイル名不要で自動アクセスしてくれるファイル名にCGIやPHPを指定して、スクリプトでページを表示させます。
 ページ切り替えは、スクリプトに表示ページの指定パラメータを「POSTメソッド」で渡してやって行います
 PG=1を渡せば「a.html」の内容を、PG=2なら「b.html」の・・・

2.WebサーバがApacheならmod_rewriteを使って表示URLを書き換える
 サーバの設定状況に依存しますが.htaccessというファイル内にmod_rewriteの規則を書いてやることでURLを自在に変更できます

3.CSSのdisplay:none とinlineで切り替え操作を駆使してJavaScriptから制御する方法
 一つのページ内に全コンテンツを書いておいてJSでCSSを操作して切り替える

どっちにしてもコンテンツがいくら増えてもSEOとしては不利なので、特に商利用ではあまりお勧めしません
そういう観点からお手本としては不適切なので、普通に組んだ方がはるかに実用的かと思います
もちろん、仕事なら基礎知識としてそれらのことは知っておくにこしたことはありません
    • good
    • 0
この回答へのお礼

回答者の皆様、早速のご回答本当にありがとうございました!
分かりやすく解説していただき非常に参考になりました。

ベストアンサーは悩みに悩みましたが、
仕事の基礎知識としての心構えも踏まえて教えてくださった
ralf124c様に選ばせて頂きました。

皆様に感謝しております。ありがとうございました。

お礼日時:2013/09/11 19:06

それはフレーム設定されているページですね。


そのwebページにあるページボタンを押した時にページが変わる部分と変わらない部分が有ると思います。
URLが変わらないのは、その両方を表示するページの表示なので枠自体が変わらない事に寄ります。
ホームページ作成ソフト(代表的なのがホームページビルダー)には付いている機能ですね。
    • good
    • 0

Webページは個々でURLが変化します。


ただし、フレームページの場合は親フレームに変化がない限りアドレスバーのURLはかわりません。
おそらく、質問者さんが見たページはフレームページではないかと思います。
フレームページの作り方は、親ページ+メニューなどのページ+リンクをクリックしたときに表示する部分。といった感じで複数のページを1度に表示しています。
通常は親ページに変化はなく、メニューなどのリンクをクリック⇒表示させるページにリンク先のページを表示。
ただ、フレームページはリンクをクリックしたときの挙動をきちんとしていないと、他のサイトのページすらも自分のページであるかのように表示されてしまいます。そういったことが理由でフレームページを嫌う人もいますので注意してください。

Webサイト作成では色々な困難にぶつかると思いますが頑張って見やすいサイト作りを頑張ってください。
    • good
    • 0

ページjが違えば必ずURLの内容は変ります。

ただ、窓が短くて全部を表示できないので、窓を見た限りでは同じに見えるだけなのではないかと推察されます。
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q異なる複数のURLのどれを選んでも、同じページを表示させるには?

URL本命(○):http://www.○○○.com

URLその1(△):http://www.△△△.com →本命ページへ。
URLその2(□):http://www.□□□.com →本命ページへ。

※○○○.com、△△△.com、□□□.com はそれぞれ独自ドメインとお考え下さい。

上記の△、□どちらを選んでも、本命ページ○を表示させる方法がもしありましたら教えて下さい。

「URL入力欄に入力したhttp://www.△△△.comを自動的にhttp://www.○○○.comに変えてくれるような」
そんな方法があったように思うのですが…。

ただし、下記の方法以外でお願いします。
・リダイレクトを利用する方法。
・△、□、○、それぞれ1つずつサーバーを借りて行う方法
(○はひとまずサーバーを1つ借りているという設定で質問させて頂きます。)

「確かにそういうのはあるが、それは間違いなく『リダイレクト』を使った方法だってぇ~」という風に思われる方がいらっしゃいましたら、そういったアドバイスも受け付けます!

逆に方法が何通りもある場合は、出来るだけ簡単かつお安い方法を教えて頂けるとありがたいです。

URL本命(○):http://www.○○○.com

URLその1(△):http://www.△△△.com →本命ページへ。
URLその2(□):http://www.□□□.com →本命ページへ。

※○○○.com、△△△.com、□□□.com はそれぞれ独自ドメインとお考え下さい。

上記の△、□どちらを選んでも、本命ページ○を表示させる方法がもしありましたら教えて下さい。

「URL入力欄に入力したhttp://www.△△△.comを自動的にhttp://www.○○○.comに変えてくれるような」
そんな方法があったように思うのですが…。

ただし、下記の方法以外でお願いします。
・リダ...続きを読む

Aベストアンサー

#1 naokitaです。更にドメイン移管質問の回答者です<(_ _)>
Yahoo等の超Bigサイトは別物と考えるべきです。

>入力ミス、、、そんなに心配する必要は無いと思います。
それなら、一文字違いで4通り(4個)では済まないはずです!
と言っても実は当方も類似ドメインを持っておりまして、
com,netの違いですがw 片方は現在も未利用・保管中。

その前に、まずはメインのドメインを如何に大きくするか?
ってことでしょう!(人気になりそうならば類似ドメインを取得する)
それまでは、コツコツとメインサイトの検索順位を上げる努力をするべきです。

個人的にはサーバーダウン時のミラーサイトを1つ位作っても良いと思いますが
スパム判定の可能性が少しでもあるのなら避けるべきです(特に商用)
4つものミラーサイトは訪問者を分けてしまい、
小規模サイトが4つあるのと同等。
仮に、その4分割される訪問者を1つのURLで運営していたとしたら
検索順位も上がるのではないでしょうか?
www有り無し、index有り無し、等の登録や内部リンク記述にも注意ですね。

.htaccessは、404等エラー時の為に利用すると良いと思います。
引越時の転送でさえもスパム認定!?された例もあるようですし・・・

#1 naokitaです。更にドメイン移管質問の回答者です<(_ _)>
Yahoo等の超Bigサイトは別物と考えるべきです。

>入力ミス、、、そんなに心配する必要は無いと思います。
それなら、一文字違いで4通り(4個)では済まないはずです!
と言っても実は当方も類似ドメインを持っておりまして、
com,netの違いですがw 片方は現在も未利用・保管中。

その前に、まずはメインのドメインを如何に大きくするか?
ってことでしょう!(人気になりそうならば類似ドメインを取得する)
それまでは、コツコツ...続きを読む

Qテーブルタグの中にdivを含めてはダメ?

テーブルタグの中にdiv要素を入れるとダメなのでしょうか?
何か不都合でもあるのでしょうか?
何かご存知の方がいれば教えていただけませんか?

Aベストアンサー

以下、HTML 4.01での話です。(XHTMLでもほぼ同じだと思います)

tableタグ直下に書けるのは、caption,col,colgroup,head,tfoot,tbodyと定義されています。
特定の条件下でtbodyが省略できますので、実際はtrも書けます。これら以外は書けないことになっています。
tr直下にはth,tdが書けることになっています(それ以外は不可)。

th,tdの下にはブロック要素が書けるので、divも書けます。

このように、テーブル内でth,tdの中以外でdivが使えないのはHTMLの仕様でそう決まっているからです。

Q一部CSSを無効にする

数ページのテーブルをcssファイルを使って半透明化させ背景が薄く見えるようにしています。
そこでテーブル自体だけでなくテーブル内の画像や文字も半透明化されるのですが、あるページのテーブル内にある数枚の画像のみを半透明化したくない場合、どのように書けば良いですか?
CSSはあまり、というか全く詳しくなくて、idやclassというのも調べてみたのですが、
目的のものに辿りつけず…困っています。宜しくお願いします。

Aベストアンサー

 とりあえず下記サイトは読まれましたか?下記は比較的わかりやすく説明していると思います。

参考URL:http://www.tohoho-web.com/css/basic.htm

Qイラストレーターのアウトライン化の解除方法??

ウィンドウズのイラストレーターの機能についての質問です。
アウトライン化がすでに実行されている文字の修正をする場合に、アウトライン化の解除はどうようにすれば出来るのでしょうか??
いろいろな本をみると、一度アウトライン化を実行すると、解除ができないと記載されていました。
ご指導頂きたくお願い申し上げます。

Aベストアンサー

それらの本に書かれている通り、一度アウトライン化をすると元には戻せません。

ただし、Ctrl+zやコマンド+zなどで作業を一つ前に戻すなどが出来るので
間違えたり、やり直したかった場合はそれで対処するしかないですね。

アウトライン化したデータを保存してしまった場合はどうやっても解除できないので
アウトライン化したデータを作った場合はアウトラインする前のデータも
別名保存などで残すのが一般的です。

Qsyntax error, unexpected '}' というエラーの対処法

PHPを習い始めて三日目になるのですがParse error: syntax error, unexpected '}' in C:\Program Files\Apache Group\Apache2\htdocs\****\****\game.php on line 33
というエラーがでるのですが33行目前後のどこをなおせばいいのでしょうか?
・game.php
<html>
<head>
<title>数当てゲーム</title>
</head>
<body>
<h1 style="background:#cccccc">数当てゲーム</h1>
<form method="POST" action="game.php">
1~100までの数を入力してください
<input type="text" name="answer" size="5" maxlength="3" />
<input type="sbumit" value=回答" />
</form>
<hr />
<?php
session_start();
if(is_null($_SESSION['answer'])){
mt_stand(microtime()*1000000);
$_SESSION['answer']=mt_rand(1,100);
$_SESSION['game_cnt']=0;
}
if($_POST['answer']!=""){
$_SESSION['game_cnt']++;
if($_session['answer']==$_POST['answer']){
print("おめでとうございます".
$_SESSION['game_cnt']."回で正解しました!");
session_destroy();
}else{
if($_SESSION['answer']>$_POST['answer']){
print("もう少し大きいです。");
}else
print("もう少し小さいです。");
}
}
}
?>
</body>
</html>
それとこの間違えたところをなおしたあとはいつもコンピュータを再起動しないと修正したところが適用されないのですがほかに方法はないですか?基本的な質問ですいません。

PHPを習い始めて三日目になるのですがParse error: syntax error, unexpected '}' in C:\Program Files\Apache Group\Apache2\htdocs\****\****\game.php on line 33
というエラーがでるのですが33行目前後のどこをなおせばいいのでしょうか?
・game.php
<html>
<head>
<title>数当てゲーム</title>
</head>
<body>
<h1 style="background:#cccccc">数当てゲーム</h1>
<form method="POST" action="game.php">
1~100までの数を入力してください
<input type="text" name="answer" size="5" max...続きを読む

Aベストアンサー

print("もう少し大きいです。");
}else
print("もう少し小さいです。");
のelseの後に{がないようですが、大丈夫でしょうか?

Qテーブル内の文字列を改行させたい

<TABLE border="1">
<tr> <TD>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</TD>
</tr>
</TABLE>

これを、ある一定の幅を指定して改行させたいのですが、
CSSを使おうが使わず指定しようが、反映されません。
全角文字だと反映されます。

IE6、IE7で対応させたいと思っています。

CSSでも何でも良いので、どうすれば対応出来るのか
ご教示下さい。

Aベストアンサー

英数半角文字だと、続けて入力した場合、一つの単語とみなして禁則処理をしてしまうんだと思います。
なので、<br>で改行するのがいいのかと思いますが、
IEで対応したいということなので、IE7で動作するかはわかりませんが、
word-break:break-all;
の指示で単語の切れ目を無視して改行してくれると思います。

参考URL:http://www.htmq.com/style/word-break.shtml

QVLOOKUP関数で得られた値「#N/A」は「0」にならないでしょうか?

 エクセル2000でVLOOKUP関数のことで教えてください。
 利用日6桁、室名を2桁、時間帯を1桁、計9桁の検索値を持った施設利用状況一覧表をつくります。そして、この表をもとに毎日の利用一覧表もつくれるファイルづくりを考えています。
 さて、この施設利用状況一覧表には飛番号が多く、VLOOKUP関数で検索をかけた場合、飛番号分には「#N/A」が返ってくることがわかったのですが、これを「0」(数として認識して欲しい)にする方法がないでしょうか。宜しくご教示の程お願いします。

Aベストアンサー

=IF(ISERROR(VLOOKUP(A1,$H$1:$I$30,2,FALSE)),0,VLOOKUP(A1,$H$1:$I$30,2,FALSE))
でも0に出来ます。0でも何でもセットできるということです。
見つからなかったケースを必ず考えておかないといけないので、VLOOKUPを使う人は、すぐこの関数の組み合わせを勉強(必要とし)ます。
また表(上例ではH列に)見つからないもの(行)を見つけるためにも上記の式を積極的な目的に使うこともあります。式に2度同じVLOOKUP関数が出てくるが、略記する方法をいつも考えているが、その方法は無いようだ。マイクロソフトよ、何とかしてほしい。

Q多数の計算セルに一括で同一の関数を追加したい

エクセル2007で、

A1:=X/Y
A2:=S/T
A3:=A/B

といった、すでに数式の入力されたセルに、

A1:=round(X/Y,3)
A2:=round(S/T,3)
A3:=round(A/B,3)

となるようRound関数を追加したいのですが、手入力でコピーアンドペーストする以外に何か方法はあるでしょうか?
後々に計算が続くため、出来れば「B1=round(A1,3)」の様なやり方は避けたいと思っています。
置換でまずroundを追加しようとしても、括弧が対応していないとエクセルに怒られました。

Aベストアンサー

 以下の様に操作されると宜しいかと思います。

A1~A3の範囲をまとめて範囲選択
  ↓
Excelの置換機能を使用して、A1~A3の範囲内にある全ての「=」(鉤括弧は不要)を「 =」(「『空白+『=』」、鉤括弧は不要)に置換
  ↓
適当な未使用の列(ここでは仮にB列とします)の1行目のセル(B1セル)に次の関数を入力

=REPLACE(A1,2,1,"=ROUND(")&",3)"

  ↓
B1セルをコピーして、B2~B3の範囲に貼り付け
  ↓
B1~B3の範囲をコピー
  ↓
A1セルを右クリック
  ↓
現れた選択肢の中にある[形式を選択して貼り付け]をクリック
  ↓
現れた「形式を選択して貼り付け」ダイアログボックスの中にある「値」と記されている箇所をクリックしてチェックを入れる
(或いは、「貼り付けのオプション」の中にある「123」と記されたアイコンをクリック)
  ↓
「形式を選択して貼り付け」ダイアログボックスの[OK]ボタンをクリック
  ↓
A1~A3の範囲をまとめて範囲選択
  ↓
Excelの置換機能を使用して、A1~A3の範囲内にある全ての「 =」(「『空白+『=』」、鉤括弧は不要)を「=」(鉤括弧は不要)に置換


 以上です。
 列記しますと長くなりますが、それほど複雑な操作では御座いません。

 以下の様に操作されると宜しいかと思います。

A1~A3の範囲をまとめて範囲選択
  ↓
Excelの置換機能を使用して、A1~A3の範囲内にある全ての「=」(鉤括弧は不要)を「 =」(「『空白+『=』」、鉤括弧は不要)に置換
  ↓
適当な未使用の列(ここでは仮にB列とします)の1行目のセル(B1セル)に次の関数を入力

=REPLACE(A1,2,1,"=ROUND(")&",3)"

  ↓
B1セルをコピーして、B2~B3の範囲に貼り付け
  ↓
B1~B3の範囲をコピー
  ↓
A1セルを右クリック
  ↓
現れた選択肢の中にある[形式を選択して貼...続きを読む

Qapacheユーザの実行権限設定はどうすれば良い?

■環境
・Cent OS

■状況
・所有者hogeのディレクトリxに対して、スクリプト経由(apacheユーザ権限)でchmodしようとすると、エラーになります
・スクリプト経由(apacheユーザ権限)でディレクトリ作成しようとしても、エラーになります

■質問
・どうすれば良いでしょうか?
・所有者hogeのグループにapacheユーザを入れたら効果あるでしょうか?

・ディレクトリ所有者がhogeであることが問題? apache所有にした方が良い?
・それとも、スクリプト実行を、apacheユーザ権限ではなく、所有者hogeにした方が良い? どうやって?

・そもそもapacheユーザ権限は、一般的にどう設定するものなのでしょうか? rootみたいに最強にする?

Aベストアンサー

> 所有者hogeのグループにapacheユーザを入れたら効果あるでしょうか?

基本的にはそれでOKですが、それだけではapacheユーザが作成した
ファイルをhogeユーザが変更できなくなってしまうかもしれません。

user=hoge,group=hoge
user=apache,group=apache,groups=hoge

groupは一次グループ、groups2は二次グループです。umask002 (新
規作成されたファイルのパーミッションが775 ) に設定されている
とします。

hogeユーザが作成したファイルはhoge/hoge なので、hogeグループ
に属するapacheユーザは編集可能です。しかし、apacheユーザが新
規作成したファイルはapache/apache になるので、apacheグループ
に属さないhogeユーザは編集できません。

そこで、ディレクトリをhogeユーザで作成し、ディレクトリにsgid
ビットを立てます。

$ chmod 2775 dir
$ ls -l dir
drwxrwsr-x 2 hoge hoge 4096 4月 7 13:35 dir

これで、apacheユーザがdir上に作成したファイルはapache/apache
ではなく、apache/hoge になるので、hogeユーザも編集できるよう
になります。

> 所有者hogeのグループにapacheユーザを入れたら効果あるでしょうか?

基本的にはそれでOKですが、それだけではapacheユーザが作成した
ファイルをhogeユーザが変更できなくなってしまうかもしれません。

user=hoge,group=hoge
user=apache,group=apache,groups=hoge

groupは一次グループ、groups2は二次グループです。umask002 (新
規作成されたファイルのパーミッションが775 ) に設定されている
とします。

hogeユーザが作成したファイルはhoge/hoge なので、hogeグループ
に属するapacheユーザは編集可能...続きを読む


人気Q&Aランキング