当前位置:Gxlcms > html代码 > HTML5/CSS3经典案例-无插件拖拽上传图片(一)

HTML5/CSS3经典案例-无插件拖拽上传图片(一)

时间:2021-07-01 10:21:17 帮助过:33人阅读

HTML5/CSS3 经典案例-无插件拖拽上传图片(一):

上传基本是项目中经常出现的,一般采用:

1、form提交

2、flash

3、html5

form提交会刷新页面,很难做到异步上传;flash可能是用得比较多了,因为可以兼顾到几乎所有的浏览器,我之前一直会用jquery的uploadify作为项目中的上传工具,uploadify也有基于html5好像是收费的,大家可以去官网看看;当然了,现在html5提供了API以及File,FileReader,XMLHttpRequest等强大的API,为我们拖放实现上传提供了可能。

效果图1:


效果图2:


由于本地上传实在太快,录了个80M的gif,终于可以看到上传的细节效果了,是不是还是很不错的,建议CSDN的博客编辑器也支持下拖拽上传,省的我去找文件了。

由于代码比较多:

这一片主要讲一下HTML和CSS:

HTML代码:


  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title></title>
  5. <meta charset="utf-8"/>
  6. <link href="reset.css" type="text/css" rel="stylesheet"/>
  7. <link href="01.css" type="text/css" rel="stylesheet"/>
  8. </head>
  9. <body>
  10. <p id="uploadBox">
  11. <ul>
  12. <li>
  13. <img src="images/pic1.jpg"/>
  14. <span class="progress"></span>
  15. <span class="percentage"></span>
  16. </li>
  17. <li>
  18. <img src="images/pic2.jpg"/>
  19. <span class="progress"></span>
  20. <span class="percentage">12%</span>
  21. </li>
  22. <li class="done">
  23. <img src="images/pic2.jpg"/>
  24. <span class="progress"></span>
  25. <span class="percentage"></span>
  26. </li>
  27. <p class="clearfix"></p>
  28. </ul>
  29. </p>
  30. </body>
  31. </html>


还是很简洁的:


a、一个p#uploadBox,里面ul li 代表每个上传图片单元

b、li img 图片

c、li span.progress用于显示进度,有种水上涨的效果,从height:0% -100%;

d、li span.percentage 用于在图片中央显示 1% 到100%数字,当到达100%时,显示一个正确的图片


CSS:


  1. body
  2. {
  3. background: #eee;
  4. }
  5. #uploadBox
  6. {
  7. width: 622px;
  8. height: 362px;
  9. background-color: #fff;
  10. border: 1px solid #777;
  11. margin: 120px auto;
  12. }
  13. #uploadBox ul li
  14. {
  15. float: left;
  16. position: relative;
  17. margin-left: 5px;
  18. margin-top: 5px;
  19. }
  20. #uploadBox li img
  21. {
  22. border: 1px solid #D1D1D1;
  23. width: 198px;
  24. height: 112px;
  25. vertical-align: middle;
  26. }
  27. #uploadBox li .percentage
  28. {
  29. width: 69px;
  30. height: 69px;
  31. position: absolute;
  32. left: 50%;
  33. top: 50%;
  34. margin-left: -34.5px;
  35. margin-top: -34.5px;
  36. text-align: center;
  37. font-size: 18px;
  38. line-height: 69px;
  39. color: #fff;
  40. border-radius: 34.5px;
  41. background: rgba(0, 0, 0, .8);
  42. }
  43. #uploadBox li.done .percentage
  44. {
  45. background: url("images/done.png") no-repeat 0 0;
  46. text-indent: -1000em;
  47. }
  48. #uploadBox li .progress
  49. {
  50. position: absolute;
  51. height: 22.4px;
  52. bottom: 0px;
  53. width: 200px;
  54. background: #000;
  55. opacity: .5;
  56. }
  57. .clearfix
  58. {
  59. clear: both;
  60. }


都是比较简单的,基本就是定位的简单使用~大家自己看下~


最后效果图:

以上就是HTML5/CSS3 经典案例-无插件拖拽上传图片(一)的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行