Recaptcha固定图像大小

时间:2010-08-02 16:06:38

标签: html css captcha recaptcha

为什么recaptcha图像的大小固定为300x57?即使在自定义注入图像的div时,div的宽度和高度也会被覆盖并设置为300x57。当然,图像可以在渲染后重新调整大小,但为什么没有选项来生成开发人员希望它的大小的图像。

http://code.google.com/apis/recaptcha/docs/customization.html

  

reCAPTCHA将依赖于具有以下ID的HTML元素的存在来向用户显示CAPTCHA:具有ID recaptcha_image的空div。这是放置实际图像的位置。 div将是300x57像素

谢谢

6 个答案:

答案 0 :(得分:11)

#recaptcha_image img {
    width: 200px !important;
    height: 38px !important;
}

答案 1 :(得分:1)

你可以覆盖内联css,即使在外部文件中,也可以在css规则后面添加!important。

答案 2 :(得分:1)

使用css demo

进行完全自定义
<form method="POST" action="">



<script type="text/javascript">
                                var RecaptchaOptions = {
                                    tabindex: 1,
                                    theme: 'custom',
                                    custom_theme_widget: 'recaptcha_widget'
                                };
                            </script>
                            <div id="recaptcha_widget" style="display:none"><div id="recaptcha_image"></div>
                                <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect, please try again</div>
                                <span class="recaptcha_only_if_image">Enter the words above:</span>
                                <span class="recaptcha_only_if_audio">Type what you hear:</span>
                                <input type="text" id="recaptcha_response_field" name="recaptcha_response_field">
                                <div class="get_another_captcha"><a href="javascript:Recaptcha.reload()">Get another CAPTCHA</a></div>
                                <div class="recaptcha_only_if_image"><a href="javascript:Recaptcha.switch_type(&#39;audio&#39;)">Get an audio CAPTCHA</a></div>
                                <div class="recaptcha_only_if_audio"><a href="javascript:Recaptcha.switch_type(&#39;image&#39;)">Get an image CAPTCHA</a></div>
                                <div><a href="javascript:Recaptcha.showhelp()">Help</a></div>
                                <script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=YourAPI"></script>
                                <noscript><iframe src="http://www.google.com/recaptcha/api/noscript?k=YourAPI" height="300" width="500" frameborder="0"></iframe><br>
                                <textarea name="recaptcha_challenge_field" rows="3" cols="40">
                                </textarea>
                                <input type="hidden" name="recaptcha_response_field" value="manual_challenge"></noscript></div>
                            <script type="text/javascript">
                                window.onload = function() {
                                    Recaptcha.focus_response_field();
                                }
                            </script>
                            <table cellspacing="0" cellpadding="4" border="0" style="font-family: Helvetica, sans-serif; color: #000000; font-size: 12px;"><tr><td><div><input type="submit" name="Button1" value="Submit"></div></td></tr></table></form>

答案 3 :(得分:1)

解决方案适用于新的Google Recaptcha(https://www.google.com/recaptcha/

<!--adjust to your needs -->
<div class="g-recaptcha" data-sitekey="your_sitekey" style="transform:scale(.8); margin:0 -30px">

答案 4 :(得分:0)

这对我有用并且有效地改变了整个控件的宽度,而不仅仅是内部图像

 #recaptcha_area
   {
         width: 250px !important;
         height: 38px !important;
   }

答案 5 :(得分:0)

对于新版本的noCaptcha Recaptcha,以下内容适用于我:

<div class="g-recaptcha" data-theme="light" data-sitekey="XXXXXXXXXXXXX"      
style="transform:scale(0.77);transform-origin:0;-webkit-transform:scale(0.77);
transform:scale(0.77);-webkit-transform-origin:0;transform-origin:0 0;"></div>

如果只进行缩放,则需要div的原始大小。但上面的解决方案解决了空白问题。

Ref