2

Rows属性を使用してサイズを変更できるテキストエリアがあります。また、テキストエリア内のテキストの行の高さを調整できるようにしたいと考えています。ただし、IE9 および IE10 ではスクロールバーが表示されます。JavaScript を使わずにこれを回避する方法はありますか?

この問題は、この JSFiddle に示されています: http://jsfiddle.net/JYkAX/6/

html は次のとおりです。

<textarea rows="3" class="textbox">No line-height
2
3</textarea>
<div class="separator"></div>
<textarea rows="3" class="textbox2">Lineheight = 20px
2
3</textarea>

そして、ここにcssがあります:

.textbox
{
    overflow: auto;  
}
.textbox2
{
    overflow: auto;
    line-height: 20px;
}
.separator
{
     display: block;
     height: 10px;
}
4

3 に答える 3

0

ie 用の追加の css ファイルを作成し、line-height を 13px などに設定します。

于 2013-03-11T20:59:20.473 に答える
0
use this line-height: 15px\9; in css

これは、最新のブラウザー用の css IE9 ハックです。それが動作します。私はIE9でそれをチェックします。IE10で確認してください。私はIE10を持っていないので。

良い質問です。私は正しく答えたようにそれを好きです:)

于 2013-03-11T22:09:34.650 に答える
0

あなたのCSSは問題ありませんが、これを機能させるにはJqueryを追加します:

$(document).ready(function() {

  var textArea = $('textarea'),
      lineHeight = parseFloat(textArea.css('lineHeight'));

  textArea.height(lineHeight * textArea.attr('rows'))

});

これにより、行の高さとその自動高さが定義されます。

あなたがJSについて言及していないことは知っていますが、これに似たものに対処しなければならなかったときの唯一の解決策はjqueryでした

ジーク

于 2013-03-11T21:04:43.970 に答える