如何将textarea设置为100%的宽度和高度?

时间:2018-05-03 17:32:29

标签: html css textarea

如何设置<textarea>以消耗浏览器窗口的100%宽度和高度?

例如,以下内容不起作用:

html, body, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
}
<textarea>Text goes here</textarea>

jsFiddle

因为它占据窗口的100%以上,导致滚动条出现:

enter image description here

如何让<textarea>消耗100%的空间?

奖金阅读

4 个答案:

答案 0 :(得分:2)

由于垂直对齐,问题是inline-block / inline元素的common white space issue。如果你检查谷歌的开发工具,你会看到:

enter image description here

所以要修复它你只需要调整垂直对齐或使textarea成为一个块元素(如其他答案中提供的那样):

html, body, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
}
textarea {
 vertical-align:top;
}
<textarea>Text goes here</textarea>

答案 1 :(得分:0)

这会奏效。或者只需将display:block添加到fiddle中的textarea。

html, body {
  margin: 0;
  padding: 0;
  border: 0;
}
* {
box-sizing: border-box;
}

textarea {
  width: 100%;
  height: 100vh;
  display: block;
 }
<textarea placeholder="message"></textarea>

答案 2 :(得分:0)

html, body {
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
}
textarea {
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
  display:block;
  resize:none;/*Add this if you dont want users to resize */
}
<textarea>Text goes here</textarea>

答案 3 :(得分:-1)

只需删除html和body标签的宽度和高度。

稍后谢谢