Los usuarios deben saber por el aspecto de la interfaz web cuál es su comportamiento ... por lo que la apariencia del botón no debe usarse como enlace, y la apariencia visual de un enlace no debe usarse como un botón para.
Antagonista
2
Por lo general, necesita más de una imagen para un botón: estándar, flotante, presionada, activa. De lo contrario, no se sentirá natural.
user123444555621
Le sugiero que también agregue cursor: pointer;css para que el cursor parezca vincular una mano con un dedo índice que apunta, ya que esto también sucede con un botón normal y es una ayuda útil para el usuario.
Esto solo funciona para mí si lo aplico a la aetiqueta directamente ( a {display: block ...}), lo cual no es aceptable. ¿Tiene alguna idea de por qué el classatributo dentro de la aetiqueta no funcionará? :( Estoy usando Firefox 27. También lo intenté a.button {...}y tampoco funciona.
just_a_girl
4
si está usando bootstrap, puede hacer <a class="btn btn-info"> </a> y usar estilos de bootstrap existentes y evitar definir un nuevo estilo.
stcorbett
si obtiene un subrayado en su botón, agreguetext-decoration:none
Rohit Chemburkar
99
Consulte la documentación de Bootstrap . Existe una clase .btny funciona con la aetiqueta, pero debe agregar una .btn-*clase específica con la.btn clase.
Si desea evitar la codificación de un diseño específico con css, sino que confía en el botón predeterminado del navegador, puede usar el siguiente css.
Para conocer el estado actual de la compatibilidad del navegador, consulte caniuse.com/#feat=css-appearance ; tenga en cuenta que el navegador puede renderizarse de manera appearance: buttondiferente a un botón nativo (al menos cuando acabo de verificar Chrome 78).
SOLO
esto es exactamente lo que estaba buscando, pero específicamente no funciona <a>en Chrome. Lo probé <span>y funcionó bien.
Hashbrown
4
Ninguna de las otras respuestas muestra el código donde el botón de enlace cambia su apariencia al pasar el mouse.
Por supuesto, puede modificar el ejemplo anterior según sus necesidades. Lo importante es que aparezca como un bloque ( display:block) o un bloque en línea ( display:inline-block).
debe mantener la pantalla: en línea; y en lugar de usar alto y ancho, debe usar relleno y alto de línea para ajustar el tamaño del ancla
Antagonista
@Antagonist: Dado que el OP quiere una imagen como fondo y probablemente siempre usará la misma, no veo por qué no debería usar la altura y el ancho específicos de esa imagen. Pero supongo que el OP probará todas las soluciones sugeridas y elegirá la que le parezca mejor.
r0skar
lo que estoy diciendo es, usar otras propiedades CSS para lograr lo mismo y mantener la propiedad de visualización original en línea ...
Antagonista
1
Para HTML básico, puede simplemente agregar una etiqueta img con el src configurado a la URL de su imagen dentro del HREF (A)
Utilice etiquetas específicas del marco y utilícelas en todo el sitio web.
Use JavaScript para emular un enlace en un elemento de botón y luego haga que el botón sea coherente con el aspecto de los botones del navegador. Esos trucos con apariencia de botones CSS nunca serán precisos.
He hecho esto en proyectos anteriores e IE se niega a comportarse. Probé este código, pero me gustaría expresar una inquietud que necesita más justificación.
MEM
0
para aquellos que tienen problemas después de agregar active y focus, asigne un nombre de clase o identificación a su botón y agregue esto a css
¡Bienvenido a StackOverflow! Incluya todo el código relevante en su publicación y no solo incluya un enlace a un sitio web externo. Los enlaces son excelentes para obtener información adicional , pero su publicación debe ser independiente de cualquier otro recurso; los enlaces pueden cambiar o quedar "muertos". Los compañeros programadores deberían poder resolver el problema detallado en la pregunta directamente de su respuesta.
cursor: pointer;
css para que el cursor parezca vincular una mano con un dedo índice que apunta, ya que esto también sucede con un botón normal y es una ayuda útil para el usuario.Respuestas:
Usando CSS:
http://jsfiddle.net/GCwQu/
fuente
a
etiqueta directamente (a {display: block ...}
), lo cual no es aceptable. ¿Tiene alguna idea de por qué elclass
atributo dentro de laa
etiqueta no funcionará? :( Estoy usando Firefox 27. También lo intentéa.button {...}
y tampoco funciona.text-decoration:none
Consulte la documentación de Bootstrap . Existe una clase
.btn
y funciona con laa
etiqueta, pero debe agregar una.btn-*
clase específica con la.btn
clase.p.ej:
<a class="btn btn-info"></a>
fuente
puedes envolver fácilmente un botón con un enlace como este
<a href="#"> <button>my button </button> </a>
fuente
Algo como esto se parecería a un botón:
Consulte http://jsfiddle.net/r7v5c/1/ para ver un ejemplo.
fuente
Prueba esto:
Puedes usar el
href
eslogan a partir de ahí.fuente
Si desea evitar la codificación de un diseño específico con css, sino que confía en el botón predeterminado del navegador, puede usar el siguiente css.
Tenga en cuenta que probablemente no funcionará en IE.
fuente
appearance: button
diferente a un botón nativo (al menos cuando acabo de verificar Chrome 78).<a>
en Chrome. Lo probé<span>
y funcionó bien.Ninguna de las otras respuestas muestra el código donde el botón de enlace cambia su apariencia al pasar el mouse.
Esto es lo que hice para solucionarlo:
HTML:
CSS:
JSFiddle: https://jsfiddle.net/adamovic/ovu3k0cj/
fuente
background-image
propiedad CSS en el<a>
etiquetadisplay:block
y ajustarwidth
yheight
en CSSEsto debería funcionar.
fuente
Si tu puedes hacerlo.
Aquí hay un ejemplo:
Por supuesto, puede modificar el ejemplo anterior según sus necesidades. Lo importante es que aparezca como un bloque (
display:block
) o un bloque en línea (display:inline-block
).fuente
Para HTML básico, puede simplemente agregar una etiqueta img con el src configurado a la URL de su imagen dentro del HREF (A)
fuente
Puede crear una clase para los elementos de ancla que le gustaría mostrar como botones.
P.ej:
Usando una imagen:
o usando un enfoque CSS puro:
Recuerde siempre ocultar el texto con algo como:
Una excelente galería de botones CSS puros está aquí e incluso puede usar el generador de botones css3
Hay muchos estilos y opciones aquí.
buena suerte
fuente
Tienes dos opciones para mantener la coherencia.
.
return false;
es evitar que se haga clic en el comportamiento predeterminado del botón.fuente
Simplemente tome diseños de botones CSS regulares y aplique ese CSS a un enlace (exactamente de la misma manera que lo haría con un botón).
Ejemplo:
fuente
para aquellos que tienen problemas después de agregar active y focus, asigne un nombre de clase o identificación a su botón y agregue esto a css
por ejemplo
//código HTML
// código CSS
fuente
Probado con Chromium 40 y Firefox 36
fuente
Prueba este código:
Mire esto (le explicará cómo hacerlo) - https://youtu.be/euti4HAJJfk
fuente
Tan simple como eso:
Simplemente agregue "class =" btn btn-success "& role = button
fuente
class="btn btn-success"
es una clase de arranque.