同一份数据用不同 type,手机上弹出的键盘完全不同。写错 type 不只是难看,还会让用户输入更慢。
type
autocomplete:让浏览器/密码管理器自动填充。常用值 name、email、tel、username、new-password、current-password、one-time-code(短信验证码)、off。
autocomplete
name
email
tel
username
new-password
current-password
one-time-code
off
inputmode:不改校验,只改手机键盘。纯数字但不是 number(如验证码、邮编)就写 inputmode="numeric"。
inputmode
inputmode="numeric"
placeholder 不能当标签用:它一输入就消失,对比度也常常不达标。标题永远用 <label>。
placeholder
<label>
JS 里读值:el.value(复选框读 el.checked,文件读 el.files);写值同样赋 el.value = …。设 el.attributes.value.value = x 是没用的——value 属性只是初始值。
el.value
el.checked
el.files
el.value = …
el.attributes.value.value = x
value