Firefoxでマウスカーソルが点滅する場合の対処法

リンク上にマウスカーソルを乗せると点滅する事象。タブにニコニコ動画などを開いていると頻繁に起こるので、ニコニコをよく見てる自分は非常に気になるので調べてみた。


■原因
アドオンでFireGesturesかAll-in-oneGesturesをいれていて、ホイールジェスチャ(右クリックを押しながらホイールをスクロールする機能)を有効にしている場合、marqueeタグや座標を固定するようなJavascriptがあるページを開くと出ます。Firefoxがmarqueeタグに完全対応していないための様子。


詳細はFirefox3.5 マウスカーソルが点滅するバグを追い詰めてみた - #untitled note


■対処法
・ホイールジェスチャを使用しない
 使用していない人はこれで。自分はタブの切替につかっているので、別の方法を取りました。


・userContent.cssを使ってmarqueeタグを無効にする。
文字をスクロールさせるHtmlタグなので必要ないです。無効にして3ヶ月位たったけど、困ったことは今のところ無い。ニコニコではランキングのコメントが動くところで使用されてた。(動画視聴画面のコメントは普通に流れる)。これだとJavascriptによる点滅は防げませんが、使用しているサイトが少ないため支障はありませんでした。少ないのでホイールジェスチャを一時的に停止することで対処もできるし。


marqueeタグの詳細はMARQUEE−HTMLタグリファレンス


■userContent.cssの使い方
1 userContent.cssがある、Firefoxの設定フォルダを開きます

C:\Documents and Settings\ユーザー名\Application Data\Mozilla\Firefox\Profiles\適当な文字列.default\chrome


・ユーザー名を確認する方法
[Ctrl]+[Alt]+[Del]キーを押すと、[ログオン情報]に「ドメイン名\ユーザー名」もしくは「コンピュータ名\ユーザー名」という形式で表示される。(現在ログオン中のユーザー名を調べる − @IT


・適当な文字列
 インストールするときに勝手に決められるようなので全員違いますが、Profilesフォルダの中に一個しかフォルダがないので、迷うことはないかと。


2 フォルダ内にuserContent-example.cssという名前のファイルがあるので、同じフォルダ内にコピーして、名前をuserContent.cssに変更します。(直接名前を変更しまってもいいのですが念のため)


3 userContent.cssをメモ帳で開き、一番下に以下の文章をコピペします

/* marqueeタグを無効にする */
marquee {
    -moz-binding: none !important;
    display: block;
    height: auto !important;
    }


4 userContent.cssを保存して閉じ、Firefoxを再起動で上記のタグ無効が適用されます。


■参考にさせていただいたページ。 ありがとうございます。
Firefox3.5 マウスカーソルが点滅するバグを追い詰めてみた - #untitled note


Firefoxでカーソルが点滅するバグを解消 - 15センチの青空 - Yahoo!ブログ


Mozilla をカスタマイズする usercss