• ベストアンサー

リンクを選択すると現れる点線枠

IEでリンクをクリックすると現れる点線枠を消すため <a href="リンク先URL" onfocus="this.blur();">○○</a> と、【onfocus="this.blur();"】をAタグ内に追加していますが、サイト内のリンクが多すぎるため、ごちゃごちゃになってしまいます。これを一括指定させたいのですが、どのように書けばいいのでしょうか。または外部スタイルシートで書くことはできますか。

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

  • ベストアンサー
  • leaz024
  • ベストアンサー率75% (398/526)
回答No.2

CSS2にはそのような点線枠(=アウトライン)の設定を行う outline という属性があるのですが、現在はごく一部のブラウザしか対応していないので、利用価値は低いでしょう。 ですので、No.1 のように JavaScript を使って各リンクの onfocus を設定するのが簡明です。ただ、No.1 のスクリプトでは動かないような気がするので、別の方法を書いておきます。 # 以下を <head> ~ </head> 内に追加。 <script type="text/javascript"> <!-- function disable_links_outline() {   var blur = function () { this.blur() };   for (var i = 0; i < document.links.length; i++)     document.links[i].onfocus = blur; } //--> </script> # <body> タグを変更。 <body onload="disable_links_outline()"> ※スクリプトをコピーする場合は、全角空白をタブなどに置換してください。

参考URL:
http://tohoho.wakusei.ne.jp/css/reference.htm#Outline
noname132
質問者

お礼

早速試してみましたら、点線枠が出ずに一括指定ができました。わかりやすく教えてくださってありがとうございました。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

試してないけど、多分、以下でいけると思います。 <script type="text/javascript"> <!-- function setLinks(){ var AObj=document.links; for(i=0;i<AObj.length;i++){ AObj(i).onfocus=="this.blur();"; } } // --> </script> <body onload="setLinks()"> 「リンクをクリックすると現れる点線枠」がよくわからないんですけど、 もしかすると、スタイルシートでできるかもしれません。

noname132
質問者

お礼

わかりにくい質問にもかかわらず、お早い回答をありがとうございました。javascriptで指定することさえ知らなかったので参考になりました。

関連するQ&A