• ベストアンサー

XHTMLで新規ウインドウを開くリンク

XHTML 1.1 でサイトを作成しています。 1.1ではaタグの"target"が禁止になりましたが、新規ウインドウで開きたい場合は、JavaScriptしかないのでしょうか? JavaScriptで作成すると未対応やOFFにしているブラウザでリンクが反応しなくなると思うのですが…。 href属性にURLを指定しつつ、JavaScriptに対応しているブラウザはJavaScriptで新規ウインドウを開くようにするにはどうしたらよいのでしょうか?(なるべく未対応、OFFにも新規ウインドウで開かせたいですが、無理であれば同一ウインドウでもOK) また、何か別の方法がありましたらご教示してください。

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

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

  • ベストアンサー
  • UKY
  • ベストアンサー率50% (604/1207)
回答No.1

うーん、何というか……。 a 要素の target 属性が廃止されたのはそれが HTML 的に「よろしくない」からで……。 質問文の後半にあるようにスクリプトが動かない環境でもうまくいくようなやり方もあるにはありますが、わざわざスクリプトを使うぐらいなら 1.0 Transitional で target="_blank" を書いたほうが楽じゃないですか? どうせよろしくないことをしていることに変わりはないんだから。 XHTML 1.1 を使うということは よろしくないことはしないということとイコールですよ。リンクを新しい窓で開きたいという発想が出てきた時点で、あなたが作ろうとしているものは既に XHTML 1.1 文書ではなくなっていると思います。

xanavi_nismo
質問者

お礼

なるほど、新規ウインドウという考えが良くないのですね。いろいろ検索していたら、「ウインドウを開くのは見る側の勝手だ」的な意見もあり、開かせない方がいいと判断しました。 勉強になりました。

その他の回答 (1)

回答No.2

結果重視ですよね。 "target"が禁止されているのはW3Cの話ですよね。 targetを入れればブラウザは反応しませんか? MIME タイプがapplication/xhtml+xmlでもエラーにはならないと思いますよ。 MIME タイプがtext/htmlならブラウザはHTMLとして読んでいるんじゃないかと思いますけど・・・ IE6で見れるくらいですから。 ですから、別ウインドウで開く属性が非推奨にも関わらず別ウインドウで開きたいなら、素直にtarget属性を使うのが良いでしょう。

xanavi_nismo
質問者

お礼

結果重視ならUKY氏の言うようにXHTML 1.0 Transitionalにしてtarget属性を使用してもいいと考えました。 しかし、なるべくXHTML 1.1に則した文章にしたいと考えたので、JavaScriptという考えに達しました。 ですが、むやみに新規ウインドウを開くことを嫌う人もいるので、ウインドウを開くことを中止することにしました。

関連するQ&A

  • XHTMLに対応したかたちで新しいウィンドウを開きたい

    単純に、<a href="http://example.com" target="foo">hoge</a>とすると、 XHTMLに反すると聞きましたが、 XHTMLに対応したかたちで新しいウィンドウを開くやりかたがあると、どこかのサイトで見ました。が、そのサイトを忘れてしまいました。 よろしければ、そのやりかたを教えていただけないでしょうか? 以上、よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • リンクの貼り方。。

    えっと、 バナーを押すとそのHPにいけるリンク(バナー) の貼り方なのですが、 どうやってやればよいのですか?? あと、よく禁止されている直リンクっていうのは どういうものなのでしょうか?? ↓のタグを使ってもよいのでしょうか?? <a href="リンク先のURL" target="_top"><img src="バナーのURL" border=0></a> めちゃくちゃ初心者で全然わかってないので できれば、できるだけ丁寧に教えていただけると うれしいです。。>-<

  • リンクを小さな別ウインドウで開く方法

    ホームページを作成しているのですがリンクをクリックしたときに小さな別ウインドウで開くやり方がわかりません。 <a href="http://ほにゃらら/" target="_blank">を使うと別のタグで開かれるだけで新しいウインドウが開かれません。 新しいウインドウでなおかつサイズを小さくしたいのですがいい方法はないでしょうか。

  • フレームのリンクのやり方を教えてください

    上下のフレームつきのHPを作成しました。 上に画像アイコンを並べて、 それをクリックしたら、下のページにそのURLが出るようにしたいのですが、うまくできません。 ちなみにテキストリンクなら成功しました。 その時のタグが <a href="http://www.~.html" target="上フレーム名">テキスト</a> です。 ちなみに画像アイコンの方は <a href="http://www.~.html" target="上フレーム名"> <img src="画像URL"></a> で、画像リンクのタグにtargetを加えただけのものです。 たぶんこれが間違ってると思うのですが、 どうしたらうまくリンクできるでしょうか? 教えてください。 よろしくお願いします。

  • targetは使えない・・・xhtmlで同様の効果は??

    現在xhtmlでtarget属性を使用して別窓で開かせようと思っているのですが、非推奨というか廃止タグのようなのです。 同様の効果を得る為に、何か良い方法は無いものでしょうか?? 宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • リンク先が別ウィンドーで開いてしまう

    初心者です。htmlでHPを作成しています。 開いているウィンドウにリンク先を表示したいのですが、<a href="access.html"target="blank">とすると3っに分割したフレームの1つにしかリンク先が開きません。 <a href="access.html">や <a href="access.html"target="top">とすると別の ウインドーが開いてしまいます。 現在開いているウインドーにリンク先を開く方法を 教えてください。

  • リンクがうまくいかない~javascript~

    現在javascriptを用いてHP作成に取り組んでいる者です。 今回はそのjavascriptでのリンクのはりかたに わからないところがあるためご質問させていただきます。 自分のHPはフレームを左25、右75の二つにわけていて、現在、左のフレームの方にjavascriptを使用し プルダウンメニューからのリンクを多くはっています。 希望としてはプルダウンメニューからあるサイトを 選んだときに、その選択したサイトが別ウインドウにでブラウザに表示されるといった仕様にしたいのですが、現実は別ウインドウが開かず、自分のHP上の左フレーム内でのちっさな範囲内のみでしか表示されません。 これではせっかくリンク先へ飛んでも そのサイトが極小の範囲でしか表示されないので 開いたページの文章が読みにくく、リンクをつけている意味がまったくなくなってしまいます。 javascriptで HTMLのタグのような<a href=リンク先 target="blank"> といったリンク先のページを別ウインドウに表示させる機能と同じような機能はありませんでしょうか。 お分かりの方がおられましたらよろしくお願いします。

  • リンクに関する制御について【XHTML&CSS&JavaScript】

    【XHTML&CSS】 リンク制御について Webサイトにおいて、現在リンクの制御の方法をどうしたらいいのかわかりません。(JavaScriptについては初心者です。) XHTMLのソース上においてリンクを以下のように記述し、 <ul> <li><a href="../link/test1.html">テスト1</a></li> <li><a href="../link/test2.html">テスト2</a></li> <li><a href="../link/test3.html">テスト3</a></li> <li><a href="../link/test4.html">テスト4</a></li> </ul> 上記のようにリストを作成するが、テスト1からテスト3まではリンク先のファイルが存在するが、テスト4についてはファイルが存在しない。 この状態では、 通常であればテスト4は"404 Not Found「ページが存在しません。」などのエラーが表示されます。 これをCSSまたは、JavaScriptなどで制御して、 リンク先のファイル(test4.html)を探しに行って存在しない場合、 リンク先へ遷移させないようにはするにはどうしたら実現可能でしょうか? よろしくお願いします。

  • target="_blank"のリンクは、ブラウザーのJavaScpritがOFFの場合、動作しないのですか?

    以下のようなtarget="_blank"のリンクは、ブラウザーのJavaScpritがOFFの場合、動作しないのですか? <a href="target_example.html" target="_blank">リンク</a> JavaScpritがOFFでも動作すると思うのですが、下記の掲示板に「ブラウザの設定でJavascriptを無効にしてる場合はリンクを開く事ができない」というようなことが書いてありました。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q126295707

    • ベストアンサー
    • HTML
  • 一つのリンクに複数のURLを指定

    一つのリンクに複数のURLを指定できますでしょうか? 想像タグ <a href="http://www.google.co.jp/" & "http://www.yahoo.co.jp/" target="_blank">検索</a> JavaScriptでも 構いません。 ネットではこんなのが見つかりました。 Bridges  |  BridgeURL http://bridgeurl.com/

    • ベストアンサー
    • HTML

専門家に質問してみよう