根据MDN引用的<select>元素:
size如果控件显示为滚动列表框,则此属性表示列表中一次应可见的行数。浏览器不需要将选择元素显示为滚动列表框。默认值为0.。
在下面的示例中,默认的表示形式size="0"和size="1"看起来完全相同。在功能或其他方面有什么不同吗?
<select>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
<select size="0">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
<select size="1">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
发布于 2017-05-07 01:09:36
MDN是错误的。size的值默认为1用于单值选择,4用于multiple值选择.0不是一个有效值,因此它将被视为默认值。
来自WHATWG HTML规范中的第4.10.7节 (重点是我):
size属性给出要显示给用户的选项的数量。如果指定了size属性,则的值必须是大于零的有效非负整数。select元素的显示大小是将解析非负整数的规则应用于元素的size属性值的结果,如果它有一个,并且解析成功。如果对属性值应用这些规则不成功,或者如果缺少size属性,则如果存在元素的内容属性,则元素的显示大小为4,否则则为1。
https://stackoverflow.com/questions/43826847
复制相似问题