Web標準に進路を取れ 第4回「ハイパーリンク−target属性を考える」
2005-11-17 Thu[Web制作 > コーディング]
やーやーどうもどうも。
なんか今週に入ってから、いきなり冷え込みましたねえ。
おとといの朝かな、とるものもとりあえず葦サボやパキラ、グリーンネックレス、アカリファなんかを取り込みました。このままでは…部屋が侵略される…というのに、窓越しの日光に暖かそうに当たっている姿を見たら、まーいっかとなってしまうのねん。ていうか私も会社に行かずに一緒に太陽に当たってたいのねん。
そうはいってもこの時分、夜の窓辺は寒かろう。
早く帰ってカーテン閉めてあげるからねベイビー♪(←バカ)
えー、おのおの方、順番的に今回は第3回「タグは論理的に付けるナリー」の続きのはずだったのだが、思うところがあり内容を変更してお届けいたす。よろしいか。だめといわれても書いちゃう。書いちゃうけど、今日のは毎日考の中で1,2を争うっぽい長文なので、眠い方は寝たほうが吉。
これまで、サルサごときがおこがましくもWeb標準の記事をいくつか書いてきているが、それらは自分でも「なるほどね」と納得できるから書いているのだということをまずご承知いただきたい。
けれど、HTMLやXHTMLやスタイルシートのことをよーく知っているえらーい人たちが決めるものは時として、自分にしてみると「…うーん」となるものだってある。Web標準だから、HTMLチェックでいい得点が欲しいからという理由で盲目的に修正を加えるのは本意ではないのだ。
なにがなんでもWeb標準に心酔し、突き進むのが良しとは思わない。たまには疑ってみることも必要だし、ちゃんとした言い分や信念があるのなら、抗ってみたり逆行してみたりするのもいいんじゃないのとさえ思う。
本題
前置きをしたうえでここにひとつ、自分で判断のつきかねるものがある。
HTML4.01やXHTML1.0で非推奨、HTML4.01Strict、XHTML1.1では廃止なのねん使っちゃだめなのねん…と言われる属性。ハイパーリンクを張るときに使う、target属性だ。
わかりやすく言えば、リンクをクリックすると別ウィンドウなり別タブなりが開く…もしくは開かない、例のアレ。
同一ウィンドウのリンク
<a href="http://www.salchu.net/blog/">毎日考BLOG</a>
別ウィンドウのリンク
<a href="http://www.salchu.net/blog/" target="_blank">毎日考BLOG</a>
フレーム使用の場合
<a href="http://www.salchu.net/blog/" target="_top">毎日考BLOG</a>
(※他、target="_parents"、target="_self"など)
などね。
非推奨や廃止といっても、表示されなくなっちゃうわけではなく、今のところはHTMLチェックで「非推奨」「激しく非推奨」「使うなっつーの」「だめだっつーの」と出まくるだけなのだが。
target属性が非推奨の理由
大まかな趣旨はこのような感じ。
以下書いていくので、参考程度に見てちょうだい。
- 別ウィンドウかどうかの指定はユーザ側で操作させるのが原則。
- アクセシビリティのため。
- そもそもtarget属性は、フレーム対応のため。
フレーム構造自体が非推奨となっていく以上、この属性も廃止の方向になっていくのは当然。
まあそんな方向で、target指定をやめる方は後を絶たない。
- target属性の利便性(駄的HTML改善計画)
起承転結があって、とてもわかりやすくまとめられています。 - リンクの target 指定(趣味のWebデザイン)
外部へのリンクに関する、はてなのアンケート結果から考察。この記事のほか、バカな閲覧者は勝手に不幸になればいいも、なかなかパンチが効いてます。 - 「target="_blank"」をやめた(PLAYNOTE)
上を受けて、標準規格派の方。 - target=″_blank″ってどうよ(Lucky bag::blog)
一応やめてみる派の方。XHTMLバージョンを宣言しちゃっていると、確かにジレンマありますよね…
target属性は罪なのか?
Web標準は、いかにユーザの自由度を上げるかがキモとなる。
したがって、制作者側がリンクにtarget属性を指定して別ウィンドウを強制するのではなく、ユーザ側がリンクをクリックしたとき、リンク先をそのまま同じウィンドウに表示するか、別ウィンドウに表示するかを選択できるようにというのだけど。
これ、そこそこブラウズに慣れているネットユーザというなら、まだわかるのだ。
けど、ネットを見る全員が全員、そんなに工夫してリンクをクリックするもんなんだろうか。おそらく、私の母親に「このリンクを別ウィンドウで開いてみて」と言ったところで、「へぇ?」という顔をするのがオチだ。Shiftを押しながらクリックをね…と言ったところでまず、「Shiftってどこ?どこ?」となるだろうことは目に見えている。
また、「ページを戻ればいいんだよ〜」と教えたところで、「戻る?戻るって、そんなのどこにあるの?えーっと、ここクリックすればいいの?」とトップページへのリンクやらなにやらをクリックしちゃうだろうことも、目に見えている(スマン)。意外と「戻る」「進む」ボタンを使いこなす人って少ないと思うのだ。マウスジェスチャ割り当てにしてもAlt+矢印キーにしても同じこと。
これがうちだけのことだったらお恥ずかしい話なんだけどさ。
でも、みんながみんな頭のいいタブブラウザを使ってブラウザ拡張を入れて、自分の使いやすいようにカスタマイズしているとは思えない。Shift+クリックや右クリックしたりしなかったりして好みのウィンドウ(もしくはタブ)に表示させることをしているとは思えないのよ。「別窓ウザイ」とおっしゃる方々ばかりとは思えないのよ。
もちろんこれはネットに出てくる意見ばかりを追うからいかにも多数派みたいな感じに受け取れちゃうのであって、そこまでたどり着いていないパソコンユーザさんのほうが大半なのだと思うし。
もうさ、調べているうちに、「リンクを別に開くかどうかはユーザが決める」という文章を読み飽きて辟易しまった。これでもWeb屋ですごめんなさいごめんなさい。だって、どこか割り切れないんだもん。
…という側の方の意見も参考までに。
- リンクで開くウィンドウはやっぱり別窓が便利!?(パンパでガウチョ)
ご自分のブログではtarget指定を無くしてはいるが、属性自体は完璧に排除されないだろうという意見の方。 - targetに関する考察(猫式Webメモ)
ご自分のブログではtarget指定を無くしてはいるが、target属性について考察。JavaScriptでの妥協案のソースなども公開されている。
ユーザが自分から新しいウィンドウを開いてくれる事を期待すべきではない。多くのユーザはその方法を知らないか、あるいはその習慣がない。
ユーザが戻るボタンを押す事を期待すべきではない。知らないかもしれないし、検索エンジンから来たかもしれない。
に激しく共感。
- リンクターゲット調査(むだづかいにっき♂)
…意外とターゲット指定してない方は多い。
といっても、そもそも考えてのことではなかったりする場合も多いけれど。
Web標準の趣旨
うん、それはね、頭で理解できてはいるのさ。
大事なことだというのもわかってる。
なにがなんでも別ウィンドウ出しまくるぜ〜というわけではない。
ガイドライン 10.暫定的なソリューションを利用する
10.1 ユーザ・エージェントを使って、ユーザが新しいウィンドウを開かないよう設定できるようになるまで、ユーザへの告知なしに、ポップアップなどの別ウィンドウを開いたり、使用中のウィンドウを変更したりしない。
(W3C/WAI「ウェブ・コンテンツ・アクセシビリティ・ガイドライン 1.0」ソシオメディア社邦訳)
b. 新しいウィンドウは混乱のもと
新しいウィンドウが開いても、それを目で確認できないため混乱する利用者がいます。また、ウィンドウを最大化している利用者の中には、新しいウィンドウが開いたことに気がつかず、ブラウザの「戻る」ボタンが突然効かなくなって戸惑う人もいます。(中略)新しいウィンドウは基本的には開かない。開く場合はあらかじめ知らせるようにしよう。(みんなのウェブ|利用者が迷わないリンクより抜粋)
(※下線はサルサによる)
アクセスした途端にポップアップが開きまくって慌ててしまったり制御できなくなってしまったり、どんどん別ウィンドウを開いてしまって、タブブラウザではないユーザのマシンのシステムリソースを喰ってしまったり。
もしくは上述したように、別ウィンドウが開いたことに気付かないユーザが今どこにいるのかが分からなくなってしまったり。そういうのを排除しようと言うのはわかるんだ。
けれど、縮小画像(サムネイル)を拡大するときも?
pdfを開くときも?
wordを開くときも?
初級のネットユーザさんほど、pdfファイルを開かない方向にある。けれど、きちんと「PDFファイル」と明記していないリンクは多々ある。確認もしないままクリックしてPDFファイルが同じウィンドウに表示されたとしたら、「あら、今まで見ていたサイトが消えて変なのが開いちゃったわ」と驚いてそのまま閉じてしまうなんて、普通にアリじゃないのか?
魔女狩り
私がかかわってきた企業サイトでも、別サーバのサイトであればtarget属性は普通に使っていたし、現在担当しているXHTMLで組まれたサイトでもそうだ。そんなことを考えると企業サイトは別ウィンドウの嵐なわけだが、こういう状況を鑑みると一概に属性を排除していくのが正しいのか、私には疑問なのだ。
それにその、企業サイトなどでリンクをクリックして別ウィンドウなりタブなりが開くという挙動、割と私は見る気がするんだけど。良かれ悪かれ、そういう固定観念ってないだろうか。例えば、特に「トップページへのリンク」と書いていなくても、企業ロゴやブログのタイトルをクリックするとトップページに飛べるもの…というような。サイドやヘッダ部分には、メニューが並んでいるものだ…というような。
話が飛んでしまったけど、総合すると、ちゃんとした理由付けがあれば「ユーザへの告知をして別ウィンドウを開く」ことは悪いことではないんじゃないだろうか。なにがなんでも別ウィンドウで開くのは許せない!みたいのは、なんだか魔女狩りみたいな感も否めないんだけど。
私がターゲット指定を使ってきた理由
別サイトだから
一も二もない。
Web制作に入ってこの方、「別サーバの外部サイトは別ウィンドウで表示させる」という挙動を刷り込まれてきたのもある。そりゃまあ、その理由を特に考えることもなく「そういうものなんだ」と思ってきちゃっているのも、いけないんだろうけど。
Webというメディアは、状況によっていくらでも可変していくものだからしょうがないのだろうけど、なんだか踊らされている感もあるなあ。本職のはしくれである私がこんなことを言っちゃいけないんだろうけど。
target属性が使えないからと言って、JavaScriptを使ったところで意味合いは一緒になってしまうし、JavaScriptを切っている方はリンクすら飛ばなくなってしまうことになる。
写真だから
縮小画像→拡大画像という使い方。
例えば自分が自分のブログを見る場合。
とある記事の拡大画像を別ウィンドウに出して、そのまた他の記事にある拡大画像を別ウィンドウに出して、タブを切り替えて比較するなんてことが多々ある。植物の画像がそれだ。でもこれも、やっぱり自分のエゴなのだろうか。画像を見たら、さっさと戻って次を読みたいと思う人が多いのだろうか。いちいち出た画像を閉じるのがめんどくさいと思う人が大半なのだろうか。(確かにそれはあるだろうけれども)
記事の合間に参照して欲しいから
これはどこかでどなたかも書いていたんだけどね。
といってじゃあ、一番最後に参考として示したリンクは別ウィンドウじゃないのかと言われると、そんな書き分けはしていないんだけど。
確かにこれだって、制作者側のエゴなんかなあとは思う。もちろん、自分のサイトにとどまってほしいからなんて気はまったくさらさらない。よそのほうがもっとタメになるだろうし楽しいだろうからだ。
ん…でも。
言われているように、別ウィンドウで開くのって、そんなに使いづらいものですか? タブブラウザを使っているかどうかでも、ウザさが違うのかもしれないけど。
妥協案
なので毎日考に張ってある、別ウィンドウで開くリンクは最近では、(別ウィンドウで開きます)というtitle属性をリンクに指定するようにしている。苦し紛れな感じではあるけどないよりはマシだ。
ユーザの自由度を高めるやり方としてもうひとつ、普通のリンクには特にtarget指定をせず、別ウィンドウを開くためのアイコンを並んで付けるという手もある。
ちなみに、少し前に手がけた大手企業のサイトは、完全にアクセシビリティに準拠するというのがウリだったが、target指定は使っていた。使ってはいたが、別ウィンドウで開くものには分かりやすいように、「別ウィンドウアイコン」みたいなものをくっつけるようにしていた。
むぅ。
と、いうことで…
いちおう、Web屋と銘打っちゃっている毎日考をチェックにかけたら「全然ダメダメちゃんです」といわれるのもイメージを損なう(なんのだ?)ので、文書型宣言をそれまでのXHTML1.1からXHTML1.0に変更。いくつかの修正を加えて、点数自体は80点から90点というところ。
中とか外とか、考えてハイパーリンクを張ってきたつもりが、今では論議の対象になってしまうなんて…という気持ちを隠せないまま、とりあえず現状のままで行く予定です。別ウィンドウで開くものにはアイコンを付けるという案はなかなかかなぁと思うんですが…。ログを一括置換で行けないこともないので、これについてはもう少々考えてみます。
長々と、御精読ありがとうございました。
そいではまた。
Web標準に進路を…とれ?(疑問形?)
次回:Web標準に進路を取れ 第5回「テーブルレイアウトは罪なのか」
<< 新宿京王百貨店「リフレピア」 | main | 毎日考恒例アンケート「あなたはケツ派?」結果発表 >>
同じカテゴリの新着記事
- CSSエディタのCSSEditを愛用してます。 (2009-04-21)
- コーディングに慣れない人のコーディング (2008-10-31)
- 久しぶりのIE確認でCSS的衝撃的事実発覚 (2008-07-22)
- インデントの話ふたたび (2008-02-24)
- 派遣コーダーのユーウツ・2 (2008-02-23)
- ブログの一言コメントを楽に更新する (2007-12-06)
- コーダーの制作ルールをちょっと考える (2007-09-05)
- 絶対パス、ときどき相対パス (2007-08-14)
- 愛用のGrep検索/置換ソフト (2007-08-08)
- ブログパーツが表示されない理由(わけ) (2007-07-12)