Hace poco Google ha abierto la veda a la personalización de algunos aspectos de sus bloques de anuncios incluso permitiendo agregarles estilos CSS y que los mismos contengan media-queries para optimizar al máximo la presentación o no de determinados bloques de anuncio e incluso establecer dimensiones personalizadas a los mismos.
Consultar documento: https://support.google.com/adsense/a..._topic=1307438
He encontrado varios ejemplos de personalización de los ADS de Google y alguno de ellos sumamente interesantes, aquí os dejo un ejemplo de labnol (http://www.labnol.org/internet/googl...-design/25252/) el cual he personalizado para que se pueda llegar a determinar - incluso - el formato del anuncio que deseamos mostrar, por ejemplo: rectangle, horinzontal o vertical.
En este ejemplo, aplicados una medida determinada en cada dimensión del espacio destinado para el anuncio:
Código HTML:
<div id="google-ads-1"></div> <script type="text/javascript"> /* Calculate the width of available ad space */ ad = document.getElementById('google-ads-1'); if (ad.getBoundingClientRect().width) { adWidth = ad.getBoundingClientRect().width; // for modern browsers } else { adWidth = ad.offsetWidth; // for old IE } console.log(adWidth); /* Replace ca-pub-XXX with your AdSense Publisher ID */ google_ad_client = "ca-pub-tu-id-personal"; /* Replace 1234567890 with the AdSense Ad Slot ID */ google_ad_slot = "id-anuncio-responsive"; /* Do not change anything after this line */ if ( adWidth >= 728 ){ google_ad_size = ["728", "90"]; google_ad_format = "horizontal"; /* Leaderboard 728x90 */ }else if ( adWidth >= 468 ){ google_ad_size = ["468", "60"]; google_ad_format = "horizontal"; /* Banner (468 x 60) */ }else if ( adWidth >= 336 ){ google_ad_size = ["336", "280"]; google_ad_format = "rectangle"; /* Large Rectangle (336 x 280) */ }else if ( adWidth >= 300 ){ google_ad_format = "rectangle"; /* Medium Rectangle (300 x 250) */ google_ad_size = ["300", "250"]; }else if ( adWidth >= 250 ){ google_ad_format = "rectangle"; /* Square (250 x 250) */ google_ad_size = ["250", "250"]; }else if ( adWidth >= 200 ){ google_ad_format = "rectangle"; /* Small Square (200 x 200) */ google_ad_size = ["200", "200"]; }else if ( adWidth >= 180 ){ google_ad_format = "auto"; /* Small Rectangle (180 x 150) */ google_ad_size = ["180", "180"]; }else{ google_ad_format = "auto"; /* Button (125 x 125) */ google_ad_size = ["125", "125"]; } document.getElementById('google-ads-1').innerHTML += ( '<ins class="adsbygoogle" style="display:block;width:' + google_ad_size[0] + 'px;height:' + google_ad_size[1] + 'px" data-ad-client="' + google_ad_client + '" data-ad-slot="' + google_ad_slot + '" data-ad-format="'+google_ad_format+'"></ins>' ); (adsbygoogle = window.adsbygoogle || []).push({}); </script> <script async src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"> </script>
¿Por qué todo esto? Sencillo, en muchas ocasiones nos puede llegar a interesar forzar la aparición de un bloque determinado de anuncios en vez de cualquier otro responsive, ya que la conversión de los mismos puede variar enormemente.
PASOS A SEGUIR
1.- Crear un bloque de adsense tipo responsive
2.- Agregar el contenedor DIV con el ID indicado en el ejemplo
3.- Establecer / modificar el formato o las dimensiones del banner que deseemos mostrar en esa ubicación según el tamaño
4.- Listos!
Espero que os sea de utilidad.
Saludos