<input type='file' />
并将其替换为可访问的输入本身。
问题是:
type='file'
访问密钥的密钥?
我的方法:
我基本上已经告诉浏览器忘记
input[type=file] {
display: none;
visibility: hidden;
opacity: 0;
height: 0;
width: 0;
position: absolute;
top: -9999px;
}
准备更换:
<input type='file' />
<label for="file">Upload your file</label>
<input type='text' id='file' />
使用一些漂亮的CSS修复了操作系统的样式,并添加了JS(jQuery)代码来处理文件浏览器显示:
$("#file").on("focus", function(ev) {
$(this).siblings("[type='file']").first().focus();
});
类型=“文件”
tabindex="-1"
,那么需要可访问性的人在短时间内连续两次打开文件浏览器时不会感到困惑?我应该添加一个
id='file-label'
<label>
aria-describbedby='file-label'
类型=“文件”
? 还是我应该放弃一切,使用肮脏的标准
类型=“文件”
?