質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
iframe

HTMLのタグ<iframe>です。<iframe>は、ドキュメント内に""inline frame""を作るHTML要素で、同じページでセパレートしているドキュメントが表示されるようにします。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

5446閲覧

cssで、タブ切り替えとiframe切り替え

nitarou2

総合スコア17

iframe

HTMLのタグ<iframe>です。<iframe>は、ドキュメント内に""inline frame""を作るHTML要素で、同じページでセパレートしているドキュメントが表示されるようにします。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2019/04/25 05:44

編集2019/04/26 01:26

先程質問させて頂いた件の続きです。
Htmlでタブを変えると同時にページも変えたいのですが、タブが変わっても、ページが変わりません。どのように記述すれば良いでしょうか?
お力添えください。

<html xmlns="http://www.w3.org/1999/xhtml"> <head> <style type="text/css"> /* --- タブ(ラジオボタン)のエリア ------------------------ */ #tabArea{ line-height : 1; /* 1行の高さ */ letter-spacing : 0; /* 文字間 */ text-align : center; /* 文字位置は中央 */ } /* --- ラジオボタン ---------------------------------------- */ #tabArea input[type=radio] { display : none; /* ラジオボタン非表示 */ } /* --- ラジオボタン直後のlabel ----------------------------- */ #tabArea input[type=radio] + label { display : inline-block; position : relative; padding : 6px 10px; /* labelの余白 */ font-size : 12pt; /* タブの文字サイズ */ font-weight : bold; /* タブは太文字 */ border : 3px solid #999; /* 未選択タブのの枠線 */ border-bottom : none; /* 下罫線は消す */ border-radius : 5px 5px 0 0; /* タブの上左右角丸 */ margin : 0 1px; /* タブ間隔 */ background : #fff; /* 未選択タブの背景色 */ color : #666; /* 未選択タブの文字色 */ } /* --- 選択されたラジオボタン直後のlabel ------------------- */ #tabArea input[type=radio]:checked + label { border-color : #4682B4; /* 選択タブの枠線 */ color : #4682B4; /* 選択タブの文字色 */ cursor : default; /* デフォルトカーソル */ z-index : 2; /* 重なりを最前面へ */ } /* --- 未選択ラジオボタン直後のlabelにマウスが乗った ------- */ #tabArea input[type="radio"]:not(:checked) + label:hover { background : #b4cee2; /* カーソルタブの背景 */ cursor : pointer; /* リンクカーソル */ } /* --- タブ下の本体エリア ---------------------------------- */ .tabBody{ position : relative; border : 3px solid #4682B4; /* 本体の枠線 */ background : #fff; /* 本体の背景色 */ margin-top : -3px; /* タブと罫線分重ねる */ z-index : 1; /* 未選択タブより全面 */ } .auto-style1 { font-size: xx-small; } </style> </head> <body> <div id="tabArea"> <input type="radio" name="tab" id="tab1" onclick="tabClick(1)"> <label for="tab1">メニュー1<a target="Change" href="表示したいurl1"></a></label> <input type="radio" name="tab" id="tab2" onclick="tabClick(2)"> <label for="tab2">メニュー2<a target="Change" 表示したいurl2"></a></label> <input type="radio" name="tab" id="tab3" onclick="tabClick(3)"> <label for="tab3">TOPへ戻る<a target="Change"最初に表示したいurl"></a></label> <div class="tabBody"><p><iframe src="最初に表示したいurl"name="Change"scrolling="auto"frameborder="0"></iframe><p id="tabNo">タブ99</p> </div> <script type="text/javascript"> function tabClick(argTabNo) { document.getElementById("tabNo").innerHTML = "タブ" + argTabNo; } </script> </body> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dit.

2019/04/25 07:17

コードがうまくコードブロックになっていないので、質問を編集し 「お力添えください。 ```html <!DOCTYPE html PUBLIC "-//……」となるようにしてください。 パソコンからなら右側にプレビューが表示されているはずなので確認しながら編集してください。
nitarou2

2019/04/25 07:35

すいません。会社のPCからではセキュリティのためか、当ホームページに入れないので、スマホで書いております。ご迷惑お掛けします。 編集致しましたので、多分治っていると思います。
dit.

2019/04/25 07:46

修正確認できました
x_x

2019/04/25 08:06

開始タグが終わる前に終了タグが出現していますが、この通りに書かれているのでしょうか? frameborder="0"</iframe
nitarou2

2019/04/25 08:21

今は、ご指摘の通りの記述になっていて、エラーになっていますね。 ここも間違った記述なんだと思うのですが、素人なので、正しい記述がわからないです。 すいません
guest

回答2

0

ベストアンサー

元のソースを活かす形ですと、以下のような形にhtmlとjsを書き換えれば希望の動作になるかと思います。
youtubeはダミーですので書き換えていただければと思います????

<div id="tabArea"> <input type="radio" id="tab1" name="tab" onclick="tabClick('https://www.youtube.com/embed/wt6m_qb06hA')"> <label for="tab1">メニュー1</label> <input type="radio" id="tab2" name="tab" onclick="tabClick('https://www.youtube.com/embed/hQyzEyIf7P0')"> <label for="tab2">メニュー2</label> <input type="radio" id="tab3" name="tab" onclick="tabClick('https://www.youtube.com/embed/S2m0Pp5agT4')"> <label for="tab3">TOPへ戻る</label> <div class="tabBody"> <p> <!--最初に表示されるサイト--> <iframe id="tabNo" src="https://www.youtube.com/embed/tN0A6h9DqbU"></iframe> </p> </div> </div> <script type="text/javascript"> function tabClick(url) { document.getElementById("tabNo").setAttribute('src', url); } </script>

投稿2019/04/26 07:09

編集2019/04/26 07:32
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nitarou2

2019/04/26 08:29

ありがとうございます。 無事に動きました。
guest

0

いろいろと細かい問題がありそうですが、とりあえずここを直せば動くかと。

HTML

1<iframe src="最初に表示したいurl" name="Change" scrolling="auto" frameborder="0"></iframe>

なお、HTML5 では scrolling 属性、frameborder 属性はなくなっています。
https://developer.mozilla.org/ja/docs/Web/HTML/Element/iframe

投稿2019/04/25 08:31

x_x

総合スコア13749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nitarou2

2019/04/25 09:53

ありがとうございました。 今出先なので、明日確認させて頂きます。
nitarou2

2019/04/26 01:10

ご指摘の記述を修正致しました。ありがとうございます。 質問が分かり辛かったので、Codeと質問内容を修正致しました。
x_x

2019/04/26 01:16

なぜ<p id="tabNo">タブ99</p>を消したのかわかりませんが、ないものには入れられないでしょう。 何を書いているのかわかっていますか?
nitarou2

2019/04/26 02:47 編集

すいません。余計な部分まで消し込んでしまっていました。混乱させてしまいすいません。 ご指摘部分は元に戻しました。 また、Codeと質問内容も更新致しております。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問