Gambaran:
Maaf menjadi penjawab berita buruk, tetapi setelah penelitian dan debugging, cukup jelas bahwa tidak ada cara untuk menyesuaikan gaya kontrol reCAPTCHA baru. Kontrol dibungkus dalam iframe
, yang mencegah penggunaan CSS untuk menatanya, dan Kebijakan Asal-Sama mencegah JavaScript mengakses konten, bahkan mengesampingkan solusi hacky.
Mengapa Tidak Ada Kustomisasi API ?:
Tidak seperti reCAPTCHA API Versi 1.0 , tidak ada opsi penyesuaian di API Versi 2.0 . Jika kami mempertimbangkan cara kerja API baru ini, tidak mengherankan mengapa.
Meskipun API reCAPTCHA baru mungkin terdengar sederhana, ada kecanggihan tingkat tinggi di balik kotak centang sederhana itu. CAPTCHA telah lama mengandalkan ketidakmampuan robot untuk memecahkan teks yang terdistorsi. Namun, penelitian kami baru-baru ini menunjukkan bahwa teknologi Artificial Intelligence saat ini dapat memecahkan varian teks terdistorsi yang paling sulit sekalipun dengan akurasi 99,8%. Dengan demikian, teks yang terdistorsi tidak lagi menjadi tes yang dapat diandalkan.
Untuk mengatasi hal ini, tahun lalu kami mengembangkan backend Analisis Risiko Lanjutan untuk reCAPTCHA yang secara aktif mempertimbangkan seluruh keterlibatan pengguna dengan CAPTCHA — sebelum, selama, dan setelah — untuk menentukan apakah pengguna tersebut adalah manusia. Hal ini memungkinkan kami untuk tidak terlalu mengandalkan pengetikan teks terdistorsi dan, pada gilirannya, menawarkan pengalaman yang lebih baik bagi pengguna. Kami membicarakan hal ini di postingan Hari Valentine kami awal tahun ini.
Jika Anda dapat secara langsung memanipulasi gaya elemen kontrol, Anda dapat dengan mudah mengganggu logika profil pengguna yang memungkinkan reCAPTCHA baru.
Bagaimana dengan Tema Kustom ?:
Sekarang API baru memang menawarkan theme
opsi , yang dengannya Anda dapat memilih tema prasetel seperti light
dan dark
. Namun saat ini tidak ada cara untuk membuat tema khusus. Jika kita memeriksa iframe
, kita akan menemukan theme
nama yang diteruskan dalam string kueri src
atribut. URL ini terlihat seperti berikut ini.
https://www.google.com/recaptcha/api2/anchor?...&theme=dark&...
Parameter ini menentukan nama kelas CSS apa yang digunakan pada elemen pembungkus di iframe
dan menentukan tema prasetel yang akan digunakan.
Menggali sumber yang diperkecil, saya menemukan bahwa sebenarnya ada 4 nilai tema yang valid, yang lebih dari 2 yang tercantum dalam dokumentasi, tetapi default
dan standard
sama dengan light
.
Kita dapat melihat kode yang memilih nama kelas dari objek ini di sini.
Tidak ada kode untuk tema khusus, dan jika ada theme
nilai lain yang ditentukan, itu akan menggunakan standard
tema.
Kesimpulannya:
Saat ini, tidak ada cara untuk menata sepenuhnya elemen reCAPTCHA baru, hanya elemen pembungkus di sekitar yang iframe
dapat diberi gaya. Ini hampir pasti dilakukan dengan sengaja, untuk mencegah pengguna melanggar logika pembuatan profil pengguna yang memungkinkan kotak centang bebas captcha baru. Mungkin saja Google dapat menerapkan API tema khusus terbatas, mungkin memungkinkan Anda memilih warna khusus untuk elemen yang ada, tetapi saya tidak berharap Google menerapkan gaya CSS penuh.