每次我开发一个包含文本区域的新表单时,当我需要指定它的尺寸时,我都有以下困境:

使用CSS或使用文本区域的属性cols和行?

每种方法的优缺点是什么?

使用这些属性的语义是什么?

通常是怎么做的?


当前回答

文本区域的大小可以通过cols和rows属性指定,甚至更好;通过CSS的高度和宽度属性。 所有主流浏览器都支持cols属性。 一个主要的区别是<TEXTAREA…>是一个容器标记:它有一个开始标记()。

其他回答

根据w3c, cols和rows都是textarea的必需属性。行和Cols是将适合文本区域的字符数,而不是像素或其他潜在的任意值。顺着row /cols走。

 <textarea style="width:300px; height:150px;" ></textarea>

如果你不是每次都使用line-height:'..';属性控制textarea的高度,width属性控制textarea的宽度。

或者你可以通过下面的css来使用font-size:

#sbr {
  font-size: 16px;
  line-height:1.4;
  width:100%;
}

对于文本区域,我们可以使用下面的css来固定大小

    <textarea  class="form-control" style=" min-width:500px; max-width:100%;min-height:50px;height:100%;width:100%;" ></textarea>

在angularjs和angar7中测试

我通常不指定高度,但会指定宽度:……还有一排排和cols。

通常,在我的情况下,只需要宽度和行,textarea看起来很好,相对于其他elems。(如果有人不使用CSS, cols是一个备用方案,正如在其他答案中解释的那样。)

((同时指定行和高度感觉有点像复制数据吗?))