Web(CSS)でのIME制御

Internet Explorer5で独自拡張したCSSのプロパティに ime-mode というのが有るのでこれを使用することでテキストエディタ でIMEの制御ができる。(Firefox3.0でも対応している)

Internet Explorer8では、CSS 2.1仕様に準拠しベンダ独自拡張プロパティにはベンダを表すプレフィックスとして-ms-を付けることになるそうだ。
-ms-付けないプロパティの動作は未確定らしい(2008/09/16時点)



構文:
ime-mode: <mode> (Internet Explorer5~7及び Firefox3)
-ms-ime-mode: <mode> (Internet Explorer8以降)

modeの設定値:

auto IME の状態を変更しない。
  指定しないのと同じ事。

normal  IME の状態を通常の状態に変更する。
  ユーザスタイルシートで Web ページが指定した値を上書きするため使う。
  Firefox独自の設定値でありInternet Explorer ではサポートされていない。

active  コンテンツがフォーカスを得た時に IME は自動的にオンになる。
  ユーザーがオフにしない限りテキスト入力には IME が使用される。
  Linux ではサポートされていない。

inactive  コンテンツがフォーカスを得た時に IME は自動的にオフに設定されるが、ユーザーは任意で IME をオンにする事ができる。
   Linux ではサポートされていない。

disabled  IME を無効にする。
  ユーザーによって IME をオンにする事はできない。



使用例:
IME を自動的にオンにする


IME を無効にする




FirefoxのuserCSS ファイルにime-mode:autoの設定を入れる事で推奨された設定に従わないようにする事ができる。
userCSS ファイルは「プロファイルフォルダ」の下のchromeフォルダにuserContent.cssという名前のテキストファイルとして保存しておく。
Windows Vistaの場合の例:
C:\Users\[userアカウント]\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxx.default\chrome\userContent.css

テキストフィールドのIME制御を無効にする場合。
input, textarea {
    ime-mode: auto;
}

パスワードフィールドのみIME制御を無効にする場合。
input[type="password"] {
    ime-mode: auto;
}



注意事項:

※1 Firefox の ime-mode は Internet Explorer と異なり、パスワードフィールドにも適用できてしまう。
パスワードフィールドでIMEをOnにすると面倒なことになるので使用しない方が良い。

※2 Gecko 1.9 の Mac 版では、disabled に設定されたエディタがフォーカスを失う際に、IME の状態をフォーカスを得る直前の状態には戻らないので使いづらくなるらしい。
   Macが使えないので動作未確認。

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 1

なるほど(納得、参考になった、ヘー)

この記事へのコメント

この記事へのトラックバック