3

オーバーフローを示す多くのコンテンツを含む標準のテキスト エリアがあります。テキスト ボックスをクリックするかタブで移動してこのテキスト エリアにフォーカスを失うと、テキスト ボックス内のカーソルが一番上にジャンプします。

さらに、入力をやめると同じことが起こります

jqueryまたは別の手段でこれを防ぐ方法はありますか? IE8 のバグかどうかはわかりませんが、これはクライアントの要求です。

前もって感謝します

4

1 に答える 1

4

これは IE8 で認識されているバグですが、私が認識している利用可能なパッチ/ホットフィックスはありません (さらに、あったとしても、ページを表示しているコンピューターにパッチ/ホットフィックスが適用されているという保証はありません)。

これは、固定幅ではなくパーセンテージ幅を使用しているテキストボックスで発生し、いくつかの「修正」が記録されていますが、すべてがうまくいったわけではありません...

まず、CSS を介してテキストエリアの幅を固定するオプションがありますが、パーセンテージを設定するためにmin-widthとを使用することもできますmax-width(ただし、これは古いブラウザーでは機能しません)。私が使用する非常に多くのテキストエリアがすべて異なる幅を必要とするため、これはうまくいきませんでした。

textarea {
  width: 700px;
  min-width: 100%;
  max-width: 100%;
}

これは、最初にバグを見つけた人の記事と、上記の説明です。

次に、列数をテキストボックスの視覚的なサイズよりもはるかに大きく設定してみてください。 これを行う方法と、これが問題であると彼らが考える理由の詳細を示す回答があります。 ただし、いくつかの賛成票で受け入れられた回答であるにもかかわらず、実際にはこれを機能させることができませんでした。

meta最後に、各ページの最初に次のタグを使用して、IE8 に強制的に互換モードを使用させることにしました (私は ASP.NET マスター ページを使用しているので、これは大きな仕事ではありませんでした)。

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

これにより、「互換性」ボタンも非表示になるため、ユーザーが誤って IE8 モードに戻すことはありません。

于 2012-10-26T08:50:44.253 に答える