利用label标签和CSS美化文件上传表单(不兼容IE6)
上周工作中,我遇到了批量上传图片页面中的一个常见问题,并成功地找到了解决方案。今天,我想与大家分享这一方案:利用HTML的`
我们的实现思路非常直观易懂。我们需要新增一个与file相册大小相匹配的button按钮。然后,利用`
有了这个触发file表单的按钮,我们只需通过绝对定位将file表单从文档流中拖出,然后使用z-index属性将其层级提升到高于button按钮。我们将file表单的透明度设置为0,使其正好覆盖在button按钮上,并且可触发选择文件表单。这里有一个细节需要注意,在FireFox浏览器中,我们无法直接使用width来设定file表单的宽度,因此需要通过input的size值来设定。
以下是样例中的成型代码:
HTML代码:
```html
```
CSS代码:
```css
.btns { position: relative; }
.btns input { width: 120px; height: 30px; }
.btns .btn_file_molding {
position: absolute;
left: 0;
top: 0;
z-index: 1;
border: 0 none;
filter: alpha(opacity=0);
opacity: 0;
} / file的z-index要大于button /
```
需要注意的细节有以下几点:
1. file表单与button按钮的高宽必须相同,以确保覆盖效果;
2. 由于各浏览器对file表单的表现存在差异,必须隐藏其边框,以避免浏览器不兼容问题;
3. 在Firefox中,直接通过样式定义width是无效的,需要使用size属性来设置file的宽度;
4. 对于IE6浏览器,可以通过JS为button绑定file表单的点击事件,此处未详细叙述。
这个方案为主体思路提供了一种实现方式,你可以在此基础上进行进一步的美化扩展,如添加背景图片、文字样式等,以满足不同页面的设计需求。
网站源码
- 利用label标签和CSS美化文件上传表单(不兼容IE6)
- 研究发现安卓恢复出厂设置功能仅是摆设
- 用AI画一支漂亮的羽毛
- ai怎么绘制立体的瑜伽球- ai逼真瑜伽球的设计方
- bmupdate.exe是什么进程 bmupdate进程的作用是什么意
- 支付宝密码输错被锁定的解决方法教程
- ai怎么手绘矢量的LED灯产品设计图-
- jfCacheMgr.exe是什么进程 jfCacheMgr.exe程序文件介绍
- 局域网共享 小心“内鬼”攻击
- ThinkPad A475值得买吗?ThinkPad A475商务本详细图解评
- 罗技G900 Chaos Spectrum鼠标全面评测 发烧友最爱
- 新小米笔记本air值得买吗?2017新款小米笔记本
- Win10怎么清理DNS缓存- Win10快速清理dns缓存的命令
- 怎样做好网站运营的活动组织
- CSS优先级和!important与IE6的BUG讨论及解决方案
- ai怎么设计七彩光影背景图-