Page 1 of 1

Non - Javascript reCAPTCHA gives me grief

Posted: Sun Nov 22, 2009 2:47 pm
by Jafil21
Hello,

I've been using reCAPTCHA to help protect an e-mail form from bots and automated scripts. However, the non-javascript version of the code (have a look here) is giving me trouble, in the sense that it includes an <iframe> which is needed to display the proper javascript code. However, the following introductory text:
We need to make sure you are a human. Please solve the challenge below, and click the I'm a Human button to get a confirmation code. To make this process easier in the future, we recommend you enable Javascript.
within the iframe is black, and the background color seems to not have been fiddled with in the <style> tags which embody the iframe. As a result, whenever I test my site with javascript disabled, the text included from the iframe isn't viewable in my black background. I've tried stripping the entire <iframe> out and using the form included in the <iframe> (anybody with a reCAPTCHA public key can visit their own page linked to by this particular <iframe>, view the source code and understand exactly what I'm talking about) but it contains relative links which can't be accessed from outside the server holding that page, even after appending the URL to them. That would be a nice hack, but unfortunately it doesn't work.

Is there anything I can do to change the color of that text, or, even better, take it off completely? I'd really like it if my captcha appeared well to non-javascript enabled user agents.

I've posted this on reCAPTCHA's mailing list but I've gotten no answer, so I thought I might seek help from here as well.

Thanks in advance.

Re: Non - Javascript reCAPTCHA gives me grief

Posted: Sun Nov 22, 2009 3:09 pm
by Jafil21
Sorry for re-posting, but I'd like to post a solution I found after looking around w3schools for a bit:

Code: Select all

<iframe src="http://api.recaptcha.net/noscript?k=6LdrjgkAAAAAAPZSL_uV0IcBbnnYyTciIDoTaX2E" height="100" width="400" frameborder="1" [b]style = "background-color:white;"[/b]></iframe>
Not very clean code, but it did the trick. I'll just leave this here for others to see.