cols="10"这10列中,是一行可以写十个数字或着是字母吗?我试了,写数字或者是字母可以不止写十个!
cols的值和最终呈现的宽度有没有什么比如的关系或者公式呢?
在simsun字体,也就是宋体下,我们可以很容易得看出之间的关系为:
Chrome: 8px * cols + 17px
IE: 8px * cols + 17px
FireFox: 8px * cols + 29px
由于CSS,HTML这些东西是老外发明的,因此,cols每个单位相对的宽度是相对于英文字符而言的,在宋体下,可以认为是8px,后面的17px其实很好理解,表示滚动条的宽度。在window系统下,默认,所有浏览器的滚动条所占据的宽度都是17像素。所以,对于Chrome和IE浏览器而言,文本域最终的宽度(padding和border尺寸暂不考虑)就是单字符宽度*cols值+滚动条宽度。然而,FireFox浏览器下,增加的宽度是29px,这个不就搞不清楚问什么是29px了。
在IE浏览器下,如果<textarea>的overflow属性值为hidden, 则没有后面增加的17px,而其他浏览器没有此现象。
然后,当我们使用其他字体的时候,最终的宽度表现则比较微妙了。因此,单个cols对应的单位就不是整数了,可能是8.1px也有可能是7.7px~7.8px这样子的。
网上找来的,希望对你有帮助,自己也不太清楚。。。
不是的,cols="10"表示的是10列,rows="10"表示的是10行。数字或者字母写的多少和这个是没有关系的,这个在后面会有的
cols和rows是宽高的字符数量度量限定,只能输出大小不能影响输入的字符数