今天-10-8日,国庆后第一天上班。
恩,早上列了下要做的东西,不至于长假后,啥都忘了,该走的路得继续走,该做的继续做。
回归正题,昨天做验证码识别表单时,发现 file 表单真是奇丑无比,琢磨着美化下。label是很常用的表单标签,通过它可以和常用的表单元素做绑定,在点击label时会自动将焦点移动到绑定的元素上,这也是美化file表单元素的关键点。
科普知识 HTML 标签的显式绑定和隐式绑定:
显式绑定:
Social Security Number:
隐式绑定:
Date of Birth:
显式绑定和隐式绑定的区别就是,前者结构灵活,可拓展性强,不过ie8及ie8以下不兼容,后者只能用label包着表单元素,结构可调整性差,但兼容性好,连ie6都兼容。
这里用显式绑定的方式来美化file表单元素,如下效果图。
file表单美化后效果图 1
上代码:
选择图片文件:
浏览图片文件
// 文件选中时,触发onchange事件
document.getElementById("file").addEventListener("change",function () {
document.querySelector('#location').value = this.value;
})