El que se puedan hacer así tiene varias ventajas. Por un lado serán visibles para las arañas de los navegadores (las imágenes no lo son tanto), pero quizás las más importantes son la facilidad para cambiar el diseño o la redimensión automática.
Como hablamos de CSS sólo tendremos que crear una clase, darle propiedades y por último añadírsela al enlace que queremos convertir en botón. Nuestra clase se llamará boton -somos así de originales- y para que se entienda le iremos añadiendo propiedades poco a poco.
Un enlace básico sería así:
<a class="boton" href="URL_DESTINO1">Destino 1</a>
Como la clase boton todavía no existe, el enlace se verá con las propiedades por defecto que tengamos en nuestra plantilla. Lo primero que le incorporamos es un borde, un margen interno (padding), colores para fondo, texto y tamaño de este último. Por si los enlaces aparecen con un subrayado, también forzamos la eliminación de este detalle para que el aspecto sea más limpio.
.boton {
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
}
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
}
Ahora le añadimos un efecto redondeado en las esquinas. Si todos los navegadores trabajaran igual nos bastaría con la primera propiedad. Las otras dos son para aumentar la compatibilidad:
.boton {
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
}
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
}
Ya va tomando forma la cosa. Ahora es el momento de incorporar unas sombras que le den realismo y "altura". Al igual que con los bordes redondeados, las sombras hay que declararlas de tres maneras para que se puedan interpretar en más navegadores distintos. Y ya que estamos, también añadimos una sombra al texto con text-shadow.
.boton {
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
}
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
}
Nos falta un último toque que será el degradado del fondo.
.boton {
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
background: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#999999));
background: -moz-linear-gradient(top, #eeeeee, #999999);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#999999');
}
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
background: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#999999));
background: -moz-linear-gradient(top, #eeeeee, #999999);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#999999');
}
Mola ¿verdad? Pues ya el último detalle es que el botón sea "pulsable". Esto es, que cuando pinchemos haga algo. Para eso eliminaremos las sombras y desplazaremos 1 píxel abajo-derecha. La pseudoclase active es lo que nos permite hacer esto, ya que es la que detecta esa pulsación.
.boton {
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
background: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#999999));
background: -moz-linear-gradient(top, #eeeeee, #999999);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#999999');
}
.boton:active {
box-shadow: 0px 0px 0px rgba(0,0,0,.5);
-webkit-box-shadow: 0px 0px 0px rgba(0,0,0,.5);
-moz-box-shadow: 0px 0px 0px rgba(0,0,0,.5);
position: relative;
top: 1px;
left: 1px;
}
border: 1px solid #cccccc;
padding: 10px;
color: #ffffff;
background: #999999;
font-size: 28px;
line-height: 30px;
text-decoration: none;
border-radius: 16px;
-webkit-border-radius: 16px;
-moz-border-radius: 16px;
box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
-moz-box-shadow: 1px 1px 2px rgba(0,0,0,.5);
text-shadow: #000000 0px 1px 1px;
background: -webkit-gradient(linear, left top, left bottom, from(#eeeeee), to(#999999));
background: -moz-linear-gradient(top, #eeeeee, #999999);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#999999');
}
.boton:active {
box-shadow: 0px 0px 0px rgba(0,0,0,.5);
-webkit-box-shadow: 0px 0px 0px rgba(0,0,0,.5);
-moz-box-shadow: 0px 0px 0px rgba(0,0,0,.5);
position: relative;
top: 1px;
left: 1px;
}
En este último podéis pinchar y ver el efecto.
A partir de aquí vuestra imaginación es la que os permitirá cambiar la apariencia normal y la activa, así como también incorporar otra pseudoclase hover para cuando simplemente se pase el puntero por encima. Estos tres tienen tres estados: normal, hover y active. A probar...
¿Vemos otro post al azar por si le encuentras utilidad o quizás prefieres ser más metódico y suscribirte a nuestras entradas por correo? También puedes imprimir este artículo y por supuesto compartirlo en redes sociales si fue de tu agrado.
Este comentario ha sido eliminado por el autor.
ResponderEliminarFelices Fiestas Chiknaui.Mikistli (tienes un nick muy largo como para ponerlo completo) :)
ResponderEliminarBueno como estoy empezando desde cero y este blog es la biblia para mi, quiero felicitarte y darte las gracias por tu labor y ayuda, a personas como yo que estamos empezando...
ResponderEliminarComo estoy un poco perdido y tengo unas ideas de como hacer mi blog y esto de los botones me vendrian bien quisiera hacer unas preguntas.
Estas cadenas donde las tendria que poner delante o despues de alguna cadena tipo.
a class="boton" href="URL_DESTINO1">Destino 1</a
gracias
El primer código es HTML y va en el lugar dónde quieras mostrar el botón. Realmente es un enlace sencillo pero le hemos añadido la clase "boton" para controlar su estilo, es decir, su aspecto.
EliminarEse aspecto se controla con CSS que es otro tipo de código distinto desarrollado para eso, para el estilo (Cascade Style Sheets). Este otro iría en Blogger antes del cierre de la etiqueta SKIN. Entre ambas es dónde siempre encontraras las propiedades de estilo de los distintos elementos.
Saber más.
hola Olo te quería hacer una pregunta, tendrás un codigo para que un boton me habra una imagen jpg en la misma ventana pero como un pop up pero solo la imagen no toda la ventana.
ResponderEliminarsaludos.
A ver si esto te sirve:
Eliminarhttp://www.oloblogger.com/2009/12/simular-una-venta-modal.html
lo que pasa es que quiero la transparencia de un png osea solo que el botón me habrá la imagen y ya.
EliminarSin ventana modal sin ninguna ventana espero y me haya dado a entender.
espero y me puedas ayudar.
Pues no, sigo sin entenderte. Por favor, detalla todo lo que quieres hacer y el efecto que quieres conseguir.
EliminarBuenas tardes, recurro a ti porque necesito que me ayudes, veras, me dijeron que mi blog se veia mal y he cambiado la resolucion de pantalla y el ancho del blog, me ha descuadrado un monton de cosas, yo lo he intentado antes de molestarte pero soy incapaz de arreglarlo sola, debajo de cada entrada tengo botones para compartir y necesito por favor que me ayudes a alinearlos bien, te dejo la imagen para que veas como estan despues de mi intento de arreglo:
ResponderEliminarhttps://23234fd6-a-62cb3a1a-s-sites.googlegroups.com/site/teofermi1/fotos/botones1.jpg
Espero no molestarte ¿me ayudas?
un afectuoso saludo
Tienes en tu código un pequeño batiburrillo. Quizás lo más rápido es que borres lo que tienes dentro de tu post-footer-line-3 y en su lugar utilices esto otro. Luego, cuando veas que las cosas cuadran, añades los de Blogger si quieres, aunque son los mismos.
EliminarLo he intentado pero tengo tal lio que no se por donde empezar, quito cosas y me dice que no se puede analizar plantilla
ResponderEliminarTienes un mensaje en Google+
Eliminar¿recibiste el enlace?
EliminarSi y te envié un segundo mensaje...
Eliminar¿te refieres al que me decias que el enlace no funcionaba? te lo mande de nuevo, espero que ahora lo haya hecho bien...
EliminarPorfa no te olvides de lo mio
ResponderEliminarUn beso Oloman
No me olvido, pero nunca ando sobrado de tiempo. Al contrario, necesito días de 36 horas, aunque en esta ocasión te contesté. Te reenvío el mensaje.
EliminarSi quiero poner una imagen como rollover css que hago?
ResponderEliminarFacundo, pon en el buscador de la izquierda la palabra "rollover" y te saldrán al menos un par de opciones adicionales a esta. Seguro que alguna te cuadra.
EliminarHolaa, una consulta.. el color del texto del boton no anda. Parece que toma el mismo color del Titulo de entrada(hover, visited, link) Que puedo hacer?
ResponderEliminarDebería ir igual que lo hace aquí ¿alguna dirección concreta para que lo vea?
Eliminar