• 締切済み

《初心者》HTMLテーブル/フレームについて

現在HPを作成中です。下記内容のページを 作成したいのですが、方法をご教授下さい。 希望《テーブル処理》  テーブルにて領域を3つに分けます。  [A][B][C]それぞれの役割は下記の通りです。  [A]:[C]領域の表示指定メニュー  [B]:ランダムサイト表示     ランダムにページorサイトを表示します。  [C]:[A]のメニューによって選択されたページor     サイトを[C]領域に表示  《例》  [A]:YAHOO/Goo/infoseekのリンクを作成  [B]:YAHOO/Goo/infoseekをランダムに表示  [C]:初期はGooを表示その後、[A]の指定の     サイトを表示 【現在理解しているところ】 (1)フレームで指定サイトを開く (2)テーブルでサイトを開く。  (指定で開けない。開いたらそのまま。)  出来ればテーブルで作りたいです。  また、現在ランダムにサイトを表示させることが  できません。何か方法がございましたらご教授  下さい。  (もし、フレームでしか方法が無い場合、   スクロールバーを消す手段もご教授頂き   たいです。)

  • HTML
  • 回答数4
  • ありがとう数4

みんなの回答

回答No.4

こんなのはいかがですか? 動作も確認しておりません。 あまり小難しい能書きは解りませんが、質問の内容を手っ取り早く書いて見ました。 特にテーブルを使う必要はないと思いますが、一応使っておきました。 テーブルのセル内にHPを直接表示する術は私は持ち合わせておりませんのでフレームを使いました。 一応ランダムにテーブル内のフレームにホームページが表示され、リンクをクリックするとフレーム内にページが表示される予定です。 IE6対応予定 <html> <body> <head> <title>ランダム表示?</title> <script type="text/javascript"> <!-- link=new Array() link[0]=new Array("goo.html","グー"); link[1]=new Array("yahoo.html","ヤフー"); link[2]=new Array("google.html","グーグル"); linkTimer = setTimeout("r()",5000); function r(){ clearTimeout(linkTimer); linkNo = Math.floor(Math.random() * 3); document.getElementById("hpr").setAttribute('src',link[linkNo][0]); linkTimer = setTimeout("r()",5000); } function w(n){ document.getElementById("hp").setAttribute('src',link[n][0]); } //--> </script> <body> <table> <tr><td rowspan="2"> <a href="javascript:w(0)">グー</a><br> <a href="javascript:w(1)">yahoo</a><br> <a href="javascript:w(2)">google</a><br> </td></tr> <tr><td> <iframe src="goo.html" id="hpr"> pcでご覧ください。 </iframe> </tr></td> <tr><td> <iframe src="goo.html" id="hp"> pcでご覧ください。 </iframe> </td></tr> </table> </body> </html>

najima-jun
質問者

お礼

ありがとうございます!! イメージに近い動作を確認致しました。 ちなみに最終段の『pcでご覧ください。』の すぐ上の</tr></td>は逆ですよね? 度々申し訳ございませんが、現在この プログラムは時間での更新となっておりますが、 『更新ボタン』を押した時(リンク等)に 更新されるようにするにはどのように設定を すれば良いでしょうか? (時間を長くするだけでもOKなのですが、  知っておきたいので) 初歩的な質問かもしれませんが宜しく お願い致します。 ※例の『goo.html』『yahoo.html』『google.html』 のファイルにリンク集を作成する為、スクロール  させた場合に全体を表示しきる前にランダム  ジャンプしてしまうので。 現在試行錯誤中ですが、スクロールについても質問 させていただくかもしれません・・・

  • uuing
  • ベストアンサー率25% (53/206)
回答No.3

やっぱり良く分かりません。 スクロールさせたいのにスクロールバーは表示したくないとか,「リンクバナー」の意味が今ひとつ・・・。 ウェブで「バナー」とは,広告のことを指します。 例えば企業広告そのものもはもちろんですが,お友達のサイトのリンク用画像も一種の「広告」ですから,「バナー」と呼びます。 それをフレームBに縦に並べてスクロールさせる,ということでしょうか? しかしそれでは最初の説明の >[B]:ランダムサイト表示 >ランダムにページorサイトを表示します。 と違うので,よくわかりません。 そもそも,なぜランダムに表示するのかがわかりません。 リンク集に限らず,選択用のオブジェクトは,ユーザビリティを考えると順番は固定するべきです。 さっき1番上にあったものが今度は3番目にある,というのは,良いとは言えません。 少々デザインが先走りしすぎているような気がします。 HTMLは,「これは大見出し」とか,「ここから本文」「ここで1段落」などの,あくまで文書の構造を示すためのもので,デザインをするためのものではありません。 少々難しいかもしれませんが,HTML4の仕様書を日本語訳したサイトがありますので,紹介しておきます。 先に紹介したサイトとあわせてご覧になると,HTMLの書き方への理解が深まるかと思います。

参考URL:
http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401j/cover.html
najima-jun
質問者

お礼

ご指摘ありがとうございます。 まだまだ初心者で、そこまで深く考えていない ところが現状です。 cyokokichiさんのご回答がイメージに近いので 参考にしてファイルを作成してみます。 最終的なレイアウト、見せ方は再度考案致します。 スタイルシートも含め再度勉強したいと思います。 ありがとうございます。

  • negoro
  • ベストアンサー率33% (1/3)
回答No.2

フレームでしかできないと思います。 No.1の方と同じ意見ですが、自分のページの中に他のサイトを読み込んでしまうのは良くない事だと思います。 現にそういう動きをしているサイトもあるかもしれませんが、大体はフレームにおける表示領域の初歩的な指定ミスだと私は思ってます(^^; テーブルというのは「枠」だけの事であって、HTMLの中で指定した内容の物を表示するだけなので動的な事はできないかと。 初心者という事なので、あえてテーブルでレイアウトする行動は止めませんが、将来的にはスタイルシートというものを使ってページデザインが出きる様になった方がお得ですよ。 あとスクロールバーを消す方法も、フレームならば可能ですが、消す場合には必ず、「スクロールをする」、「ページを自由に動ける」事と同じ機能を持つナビゲーションを用意してください。 それがなければ、スクロールバーは消さないで下さい。 <frame src="***.html" scrolling="no"> で消えるはずです。

  • uuing
  • ベストアンサー率25% (53/206)
回答No.1

いまひとつ状況がよくわかりませんが,気をつけるべき点をいくつか書きます。 まず,テーブル要素は,あくまで表を作るために用いるべきで,文書や画像等のレイアウトなどに使うべきではありません。 視覚障害者の方むけの音声読み上げ式ブラウザなどで読むと,何のことやらわけのわからないことになってしまったりしますし,携帯端末などで見た場合も,表示が崩れて別けの分からないことになってしまいます。 どうしてもレイアウトを取りたいときは,スタイルシートを使いましょう。 #ウェブデザイナーを名乗りながら,画像や文章のレイアウトの質問にテーブル使った回答をしている方をみかけるたびに,「なんだかなぁ」と思ってしまいます。 つぎに,フレーム内に別サイトを表示するのは,著作権法に触れる恐れがあります。 今一度ページの設計を見直された方が良いように思います。 スクロールバーを消すことは出来ません,というか,消してはいけません。 ウインドウサイズを変更したりしたときに,スクロールバーが出ないのは,ウェブページの設計としては非常に不便で不親切です。 出来るだけ,閲覧者のことを考えたデザインにするように心がけましょう。 リンク先をランダムに変更するには,Javaスクリプトを使えば出来ます。 ↓このあたりが分かりやすく,参考になると思います。

参考URL:
http://www.tohoho-web.com/
najima-jun
質問者

お礼

ご返信ありがとうございます。 説明に不足がございましたのでもう少し 補足させて頂きます。 今回のお問い合わせのページは 私個人HPのリンク集の見せ方で考察しております。 [A]メニュー領域([C]領域を変更) [B]リンクバナー表示(縦スクロール使用予定)   ※スクロールバー無。 [C]リンクバナー表示   ※スクロールバー有。  ([B]と同じものを使用   ※[C]領域は全体を表示可能。)    表示イメージは下記の通りです。 [A][A][B][B][B] [A][A][B][B][B] [A][A][C][C][C] [A][A][C][C][C] [A][A][C][C][C] [A][A][C][C][C] [B]領域は補足のような領域となります。 [リンクバナー内容]:  様々なカテゴリ毎にhtmlで分類。  《例(もちろんリンクフリーのものです。)》  (1)検索HP  (2)旅行関係  (3)個人HP(お友達)  (4)音楽関連 [B]領域では小さくランダムで「上記html(1)~(4)」  を表示しスクロールさせて全体を表示。  このときスクロールバーは消去したいです。 [C]領域では閲覧者が見たい「上記html(1)~(4)」  を[A]領域で指定して[C]領域に表示。  このときスクロールバーは存在します。  ※著作権等の問題は考慮しておりませんでした。  ご指摘ありがとうございます。  しかしながら実際に使用する場合はあくまで  自身のHPのリンク集をランダム表示させます  ので問題ないと考えております。 ※携帯モバイル向けに関しては最終的に  別途モバイル対応のHP作成を考えて  おります。まだまだ、初心者でそこまで  まわっておりません。ご指摘ありがとう  ございます。 ありがとうございます。 JavaScriptがかなりの初心者ですので 少し勉強致します。

関連するQ&A

  • HTMLでフレームなしのページからフレームありのページへ

    過去の質問を探してみたのですが、なかなか私で理解できるような回答が見つからないのでお尋ねします。 現在ホームページを作成中で、フレームを使おうとしてますがトップページにはフレームを使わない仕様にしたいと考えてます。 トップページには、コンテンツが3つあり、フレームは1つでフレーム内の1カ所をそれぞれのコンテンツのページで表示させたいのです。 説明がわかりくくて申し訳ありません。 トップページ:index.html フレームページ:index2.html フレーム内:navi.htmlとmain.html このような構造でindex.htmlにA、B、Cそれぞれのコンテンツのリンクがあり、Aをクリックするとフレームページ(index2.html)のmain.htmlの部分のみがA用のページに入れ替わる。といった風にしたいのです。 A→mainA.html B→mainB.html C→mainC.html といった感じです。 それぞれのコンテンツ用にフレームページを増やす方法も考えて実行しましたが、できれば一つにしたいと思い、お尋ねします。 宜しくお願いいたします。

  • フレームなどのHTMLについて

    エディタなどを使って、HPを作成しようとしています。 自分でいろいろ配置しながらソースを確認してやってるんですが、 どうにもうまくいかないので、2つほどアドバイスお願いします。 (1)例えばテーブルを1つ作ったとして、その横に文章を書く時、テーブルの1番下のところにしか文字が書けません。 また同じようなことだと思うんですが、テーブルの横に少し間を開けてテーブルを作成しようとしても、元あったテーブルの下へ出来てしまい、横に並べて作ることが出来ません。 どうやったら作れるんでしょうか。 ソフトは「alphaEDIT+」を使用しています。 タグでもいいので教えて頂けると嬉しいです。 (2)HPのベースを作る際、この教えて!gooみたいに、横にメニューを置いて作りたいと思います。 その時、ここと同じようにメインの部分をスクロールさせた時、一緒にメニューも動くようにしたいです。(ブログによくある感じで) これがノンフレームってやつなのか^^; こういう時は、メニューとメインを別々に作ってタグかなんかでくっつけて表示させるんでしょうか? またもしそうなら、普通のフレームで作ったのと同じように、各ページを表示させる時「target」とかで表示させる場所をメインの部分にしておけば、メニューは自動的に表示されるんでしょうか? 初心者なので質問が意味不明かもしれませんm(__)m また、こういうHTMLが分かりやすく書いてあるようなオススメサイトがあれば教えてほしいです。 よろしくお願い致します。

  • リンク先のフレームページ(ウィンドウ枠の固定風)

    すみません。いろんなサイトを探してますがどうしてもわかりません。 「1.html」とフレーム上下(上:a.html、下:b.html)に別れた「2.html」というのを作りました。 「1.html」にはテーブル表示したページと成っています。 テーブルの中には「2.html」へリンクの仕方はわかります。 でも下(b.html)のデータが長いのでnameへジャンプするように指定(b.html#name1)としたら、もちろん上のフレーム(a.html)が表示されません。 2.htmlへリンクしてなおかつ、指定先が表示されるようにするにはどうしたらいいでしょうか?(Excelのウィンドウ枠の固定風みたいにして、name1へジャンプするように)) スタイルシートでも考えたのですが、ブラウザによってみれなくなるのは極力避けたいのです 当方のHP作成ソフトはgoliveです。 長文申し訳ありませんがよろしくお願いします

    • ベストアンサー
    • HTML
  • フレーム有のページについて

    こんにちは 現在ホームページを作成していますが、フレーム有のページ(例:A.html上下2段構成、中身はB.html、C.html)が多くなっています。 検索エンジンなどでB.htmlが引っかかったとき、C.htmlが表示されないのでは?と心配しております。つまりはA.htmlとして表示させたいってコトなんですけどね・・・。 このような要望なのですが、このようにするにはどういったソース(?)を書けばよいか御教授下さい。

    • ベストアンサー
    • HTML
  • リンクについて、フレームについて、更新について

    ホームページ初心者です。 下記の3つの件で質問します。どなたか教えて下さい。 1 質問は自分でホームページを作ったさいにどこか違うWebにリンクを 張ったり、張られてないとないとロボット型検索エンジンに拾われないと聞いたことが ありますが本当ですか? 2 自分でホームページを作りました。左右のフレームに切ったものだったのですが 作成後、gooやInfoseekなどに登録しました。その後gooで自分のホームページの タイトルをいれて検索したところ、フレームで切ってある右側のページのURLが 拾われていました。クリックして表示したところフレームの右側だけのページが 表示されてしまいました。何故こうなるのでしょうか? 3 ホームページは更新しないと検索エンジンから削除されてしまうことがあるのでしょうか? 以前はgooやInfoseekに登録されていましたが、最近検索すると出てきませんでした 作成してアップした後全然更新していなかったもので、そのせいなのでしょうか? 以上すいませんが宜しくお願いします。

  • テーブル?フレーム?

    geocitiesを利用しています。 ホームページビルダーを利用して、今までページを作っていました。 質問です。 よく、素材サイトなどのページで、 フレームで言うと縦3列に並んでいて、中央だけが表示されているような状態のサイトや、 (両端のフレームにあたるところはつねに空白) 画面中央に縦の長四角のスペースがあり、 そこだけが画面として変化するサイトがあります。 あのように、全面が表示されないページを作りたいのですが、 テーブルやフレームなどをあまり利用した事がありません。 どのような処理、タグを使うと、あのようになるのでしょうか。(説明しにくいので、補足はいたします) また、トップページが全画面でも、 子画面が開き、ブラウザボタンなどがつかえないような、 大きさが固定されたページがでるサイトもあります。 前者よりこちらのほうが簡単であれば、こういった形式でもいいな、と思っています。 とにかく初心者で、ビルダーで作ってきたので、 説明が下手なのですが、 わからない部分は補足させていただきますので(本日中には必ずレスが返せる体制です) よろしくお願いいたします。 FTPなどでアップするのではなく、ブラウザ上からアップしているので、フレームを利用する際にも、いちいちフレームのページを1・2・3、などとアップしています。 (もしかしたら方法を知らないだけかもしれません) 「こんな感じで検索すればわかる」というご意見でもいただけると嬉しいです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • フレームはやめた方がよい?

    今サイトを作っていますがTOPをフレームにするかどうかで迷ってます。その理由は フレームにするデメリット 1)検索にかかりにくくなるらしい(私はかかって欲しい) 2)どうやら嫌われているらしい フレームにするメリット 3)フレームにしないと各ページに飛ぶクリックボタンを変更の際、すべてのページ分直さなければいけなく面倒 4)見る側からするとどのページからも移動しやすく見やすいと思う(だからできればフレームにした方が良い気がする) 質問 A それぞれは当たっていますか? 質問 B 3)について皆さんはどうしていますか? 質問 C Top ページ A から  一階層下ページB C D E にリンクしているとします。 客はAからどのページに最初に飛ぶか分かりません。 Topは普通のページにして一階層下ページのどこかにとんだ時フレームになっているようにするには Aをindex B と B top としたフレームページ B' C と C top としたフレームページ C'      ~~~ を全て造らなければいけないですか?

    • ベストアンサー
    • HTML
  • フレームページから別フレームのアンカーへ

    あるフレームAからフレームBへ移るとき、 同時に子ページのアンカーへもリンクのさせたいのですが、 検索しても「いくつか方法がある」という記述は発見できたものの、 そのものズバリ、Javascriptが記述されたページが見つからず、 途方に暮れています。 a.html(フレームA)  a-1.html  a-2.html b.html(フレームB)  b-1.html  b-2.html   #b-2a、#b-2b、#b-2c・・・ 上記のような場合なのですが、 単純に考えればb-2.htmlのそれぞれのアンカーを指定した フレームページをアンカーの数だけ作ればよいのですが、 アンカーが数百単位で存在し、 フレームBだけではなくフレームC、D、E・・・と フレーム自体も数が多いので、後々のメンテナンスを考えると Javascriptで行う方が良い気がしています。 どなたか解決方法をご存知でしょうか?

  • HTMLでの質問ですが。

    HTMLでの質問ですが。 フレーム機能でA(メニュー)とB(表示切替)のページを作り、AをクリックするとBの表示が切り替わる事ができますが。 テーブル内で同じような事はできますでしょうか? テーブルAとB作って、AをクリックするとBの表示が切り替わる仕組み。

    • ベストアンサー
    • HTML
  • フレームについて

    こんにちは。 久しぶりにフレームを使ったページを作ろうとしているのですが、うまくいきません。 (1)フレームの境界線をなくしたい。 <HTML> <HEAD> <TITLE>サイト名</TITLE> </HEAD> <frameset cols="20%,80%" frameborder="1" framespacing="1"framepadding="1" bordercolor="black"> <FRAME src="000a.html" frameborder="on"> <FRAME src="000b.html" name="000c.html" frameborder="on"> <NOFRAMES> <BODY> <P>このページを表示するには、フレームをサポートしているブラウザが必要です。</P> </BODY> </NOFRAMES> </FRAMESET> </HTML> とやっているのですが、スクロールバーがでてきてしまいます; (2)リンクがうまく右のページに飛ばない <A href="About.html"target="000b.html" title="説明文"><font color=4000ff size=4><B>About</B></A> とやっているのですが000b.htmlのページに表示されず、しかも新しいウィンドウが開かれてしまいます。 何かおかしなところがあったら教えてください。 よろしくお願いします!

専門家に質問してみよう