HTML input type=file文件选择表单元素二三事
这篇讲的是HTML中一个常见但常被忽视的元素——`input type=file`,作者从其基础语法聊起,一路梳理了它在HTML5时代的“复兴”与演进。文章核心对比了在不同浏览器和HTML标准下,原生文件上传能力的变迁:过去只能单图上传,常被Flash插件替代;如今借助`multiple`属性、File API和FormData,已经能流畅实现多图选择、预览乃至Ajax上传。 作者也详细拆解了使用原生方案时绕不开的几个关键点:表单必须设置`enctype="multipart/form-data"`;图片预览在老IE和现代浏览器中有截然不同的实现路径;而那个“丑陋”的默认按钮,可以通过`label`元素优雅地关联自定义样式。此外,文章还实用地介绍了`accept`属性如何用MIME类型过滤文件(比如`accept="image/*"`),以及通过`form.reset()`来清除已选择文件值的便捷方法。对于需要兼容IE8-9的PC项目,文章也指出了原生HTML5与Flash方案混合使用的常见策略。整体上,它把一个表单元素背后的兼容性考量、交互优化与API细节讲得颇为透彻。