简体   繁体   English

如何设置联系表单 7 文件输入按钮的样式

[英]How to style contact form 7 file input buttons

I can't seem to target the button for up loading a file within contact form 7. How can I target the choose file button so I can add a background-color etc. Oh I am also doing this is WordPress incase you need to know that.我似乎无法定位用于在联系表单 7 中上传文件的按钮。我如何定位选择文件按钮,以便我可以添加背景颜色等。哦,我也在这样做,这是 WordPress 以防万一你需要知道那个。 So in the backend it looks like this;所以在后端它看起来像这样;

<label class="form_label"> Your Name<span>*</span>
[text* your-name]</label>

<label class="form_label"> Your Email<span>*</span>
[email* your-email]</label>

<label class="form_label">Tel
[tel tel]</label>

<label class="form_label">CV<span>*</span>
[file cv id:upload]</label>

<label class="form_label">Cover Letter
[textarea your-message]</label>

[submit "Send"]

My output html looks like below.我的输出 html 如下所示。

 <div role="form" class="wpcf7" id="wpcf7-f47-o1" lang="en-US" dir="ltr"> <div class="screen-reader-response"></div> <form action="/Lester_Goddard_New/#wpcf7-f47-o1" method="post" class="wpcf7-form" enctype="multipart/form-data" novalidate="novalidate"> <div style="display: none;"> <input type="hidden" name="_wpcf7" value="47" /> <input type="hidden" name="_wpcf7_version" value="4.9" /> <input type="hidden" name="_wpcf7_locale" value="en_US" /> <input type="hidden" name="_wpcf7_unit_tag" value="wpcf7-f47-o1" /> <input type="hidden" name="_wpcf7_container_post" value="0" /> </div> <p><label class="form_label"> Your Name<span>*</span><br /> <span class="wpcf7-form-control-wrap your-name"><input type="text" name="your-name" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required" aria-required="true" aria-invalid="false" /></span></label></p> <p><label class="form_label"> Your Email<span>*</span><br /> <span class="wpcf7-form-control-wrap your-email"><input type="email" name="your-email" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-email wpcf7-validates-as-required wpcf7-validates-as-email" aria-required="true" aria-invalid="false" /></span></label></p> <p><label class="form_label">Tel<br /> <span class="wpcf7-form-control-wrap tel"><input type="tel" name="tel" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-tel wpcf7-validates-as-tel" aria-invalid="false" /></span></label></p> <p><label class="form_label">CV<span>*</span><br /> <span class="wpcf7-form-control-wrap cv"><input type="file" name="cv" size="40" class="wpcf7-form-control wpcf7-file" aria-invalid="false" /></span></label></p> <p><label class="form_label">Cover Letter<br /> <span class="wpcf7-form-control-wrap your-message"><textarea name="your-message" cols="40" rows="10" class="wpcf7-form-control wpcf7-textarea" aria-invalid="false"></textarea></span></label></p> <p><input type="submit" value="Send" class="wpcf7-form-control wpcf7-submit" /></p> <div class="wpcf7-response-output wpcf7-display-none"></div> </form> </div>

I had to change visibility:hidden;我不得不改变visibility:hidden; by opacity:0;opacity:0;

according to https://www.quirksmode.org/dom/inputfile.html so to the button continues to work otherwise the click didn't prompt the browse.根据https://www.quirksmode.org/dom/inputfile.html所以按钮继续工作,否则点击不会提示浏览。

You cannot style the button of file upload like any button, instead you may use pseudo element to cover the button and apply style to it.您不能像任何按钮一样设置文件上传按钮的样式,而是可以使用伪元素来覆盖按钮并对其应用样式。 You may try something like this.你可以尝试这样的事情。 You can change the content and the style of the "new" button like you want :您可以根据需要更改“新建”按钮的内容和样式:

 span.cv { position:relative; } span.cv:before { content:"Upload file"; position:absolute; left:0; padding:5px; background:red; color:#fff; width:130px; text-align:center; border-radius:5px; cursor:pointer; } span.cv>input { visibility:hidden; }
 <div role="form" class="wpcf7" id="wpcf7-f47-o1" lang="en-US" dir="ltr"> <div class="screen-reader-response"></div> <form action="/Lester_Goddard_New/#wpcf7-f47-o1" method="post" class="wpcf7-form" enctype="multipart/form-data" novalidate="novalidate"> <div style="display: none;"> <input type="hidden" name="_wpcf7" value="47" /> <input type="hidden" name="_wpcf7_version" value="4.9" /> <input type="hidden" name="_wpcf7_locale" value="en_US" /> <input type="hidden" name="_wpcf7_unit_tag" value="wpcf7-f47-o1" /> <input type="hidden" name="_wpcf7_container_post" value="0" /> </div> <p><label class="form_label"> Your Name<span>*</span><br /> <span class="wpcf7-form-control-wrap your-name"><input type="text" name="your-name" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required" aria-required="true" aria-invalid="false" /></span></label></p> <p><label class="form_label"> Your Email<span>*</span><br /> <span class="wpcf7-form-control-wrap your-email"><input type="email" name="your-email" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-email wpcf7-validates-as-required wpcf7-validates-as-email" aria-required="true" aria-invalid="false" /></span></label></p> <p><label class="form_label">Tel<br /> <span class="wpcf7-form-control-wrap tel"><input type="tel" name="tel" value="" size="40" class="wpcf7-form-control wpcf7-text wpcf7-tel wpcf7-validates-as-tel" aria-invalid="false" /></span></label></p> <p><label class="form_label">CV<span>*</span><br /> <span class="wpcf7-form-control-wrap cv"><input type="file" name="cv" size="40" class="wpcf7-form-control wpcf7-file" aria-invalid="false" /></span></label></p> <p><label class="form_label">Cover Letter<br /> <span class="wpcf7-form-control-wrap your-message"><textarea name="your-message" cols="40" rows="10" class="wpcf7-form-control wpcf7-textarea" aria-invalid="false"></textarea></span></label></p> <p><input type="submit" value="Send" class="wpcf7-form-control wpcf7-submit" /></p> <div class="wpcf7-response-output wpcf7-display-none"></div> </form> </div>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM