2010-07-21 63 views

回答

1

它通常做的方法是通过将文件输入单元100%透明用CSS opacity财产,并把一个漂亮的按钮,它的后面。这样,文件字段仍然会收到点击,但底层元素的外观可以以任何您想要的方式进行样式化和脚本化。

+0

是我有必要使用JavaScript或HTML和CSS就足够了? – vlevsha 2010-07-21 15:34:35

+0

这一切正常。谢谢! – vlevsha 2010-07-21 15:54:10

0

文件按钮是一个大难题。我个人会用http://swfupload.org/

+0

SWFUpload涉及Flash。 不会阻止它的按钮,在iPhone/iPad上可以看到? – vlevsha 2010-07-21 03:41:24

+0

如何浏览和选择要从iPhone/iPad上传的文件? – Casey 2010-07-21 04:19:05

+0

公平的问题。 :) – vlevsha 2010-07-21 04:32:56

0

我喜欢这个吻的方式,像往常一样。这在Chrome和Firefox中适用于我。

HTML:

<div class="form-group"> 
    <label>Cover Image:</label> 
    <div id="uploadLabelDiv" class="fade"> 
     <p>Change cover image</p> 
     <label for="upload"> 
       <img [src]="project.cover" class="img-responsive" id="coverImage" /> 
      </label> 
     </div> 
</div> 
<input type="file" id="upload" (change)="fileuploaded($event)" style="visibility:hidden;" /> 

CSS:

#uploadLabelDiv { 
    position: relative; 
    max-width: 400px; 
    background: transparent; 
    color: #fff; 
    transition: all 0.3s; 
} 

.fade { 
    opacity: 1; 
} 

.fade:hover > label { 
    opacity: 0.4; 
} 

.fade > p { 
    opacity: 0; 
    transition: none; 
} 

.fade:hover > p { 
    opacity: 1; 
    transition: all 0.3s; 
} 

p { 
    position: absolute; 
    top: calc(50% - 30px); 
    left: calc(50% - 60px); 
    color: black; 
    font: bold; 
} 

缺少类是引导。