13

テキスト領域の高さは、たとえば、ビューポートの高さの 50% に等しいと言いたいです。どうやってやるの?シンプルheight: 50%ではうまくいきません。

4

8 に答える 8

10

これは、CSS3ビューポート ユニットtextarea使用して、ビューポートの高さの正確に 50% を取るa の小さな例です。vh

最初の包含ブロックの高さの 1% に等しい。

したがって、の高さを to に設定すると、高さのtextarea半分50vhになりますbody

html, body, textarea {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  height: 100%;
}

textarea {
  height: 50vh;
}
<textarea></textarea>

Opera miniとIEでの部分的なサポートを除いて、さまざまなブラウザでサポートされています。

于 2015-03-24T21:46:56.610 に答える
2

これを行うには、何らかの方法でJavaScriptを使用する必要があると思います。サイズ変更イベントを処理し、テキスト領域をそのピクセル数に設定します。

于 2009-03-11T01:33:56.007 に答える
1

display:block を設定すればできます。しかし、html 4.01 strict では列と行を定義する必要がありますが、css でオーバーライドできると思います。

于 2009-03-11T01:35:17.110 に答える
1

HTML と CSS は、高さを使ってこの種のことを行うのはあまり得意ではありません。それらは間違いなく、自由に流れるページを垂直方向にスクロールすることに重点を置いています。FryGuy が言うように、JavaScript が最も完全なソリューションになる可能性が高いと思います。

于 2009-03-11T01:38:00.757 に答える
0

この質問が尋ねられたとき、これはおそらくありませんでしたが、CSS Values and Units Module Level 3 includes viewport-percentage lengths . ただし、 iOS 以外のモバイル ブラウザーではサポートされていないようです。

于 2013-03-18T23:04:32.020 に答える
0

これをテストするすべてのブラウザーがあるわけではありませんが、ほとんどの場合、高さを指定するだけで機能するはずです。

これを Internet Explorer 7 と Firefox 3.0 でテストしました。

次のコードを使用するだけです。

<textarea style="height: 50%; width: 80%;">Your text here</textarea>

どのブラウザで問題が発生しましたか?

于 2009-03-11T01:37:39.337 に答える
-2

削除してみてください

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
于 2013-04-01T20:17:36.867 に答える