¿Cómo puedo cambiar el estilo del borde de la casilla de verificación (entrada)? Lo he puesto border:1px solid #1e5180
, pero en FireFox 3.5, ¡no pasa nada!
122
Si algo sucede en cualquier navegador, me sorprendería. Este es uno de esos elementos de formulario sobresalientes que los navegadores tienden a no permitirle mucho estilo, y que las personas generalmente intentan reemplazar con javascript para que puedan diseñar / codificar algo para que se vea y actúe como una casilla de verificación.
Sugiero usar "esquema" en lugar de "borde". Por ejemplo:
outline: 1px solid #1e5180
.fuente
!important
a su CSS cuando use el esquema. Estaba probando esto en Firefox 12.0 y sin! Importante, el esquema desaparecería mientras estuviera haciendo clic en la casilla de verificación.Deberías usar
Luego, se deshace de la imagen / estilo de casilla de verificación predeterminada y puede aplicarle un estilo. De todos modos, un borde todavía estará allí en Firefox
fuente
Puede usar sombras de cuadro para falsificar un borde:
fuente
Aquí hay una solución de navegador cruzado CSS (sin imágenes) pura basada en casillas de verificación personalizadas de Martin y botones de radio con CSS3 LINK: http://martinivanov.net/2012/12/21/imageless-custom-checkboxes-and-radio-buttons -with-css3-revisited /
Aquí hay un jsFiddle: http://jsfiddle.net/DJRavine/od26wL6n/
He probado esto en los siguientes navegadores:
fuente
Estoy desactualizado, lo sé ... Pero una pequeña solución sería colocar su casilla de verificación dentro de una etiqueta y luego peinar la etiqueta con un borde:
luego peina la etiqueta:
fuente
label { position: relative; overflow: hidden; width: 16px; height: 16px; border: 1px solid #0f0; }
y luegolabel > input[type=checkbox] { position: absolute; left: -999px; }
Esto le permitirá personalizar su propia casilla de verificación y la casilla de verificación original seguirá marcada / desmarcada, pero el usuario no la verá. Solo verán su casilla de verificación personalizada.:hover
y:checked
para aplicar estilo a otros estados de su casilla de verificación personalizada.Aquí está mi versión que usa FontAwesome para el ticker de la casilla de verificación, creo que FontAwesome es utilizado por casi todos, por lo que es seguro asumir que tú también lo tienes. No probado en IE / Edge y no creo que a nadie le importe.
fuente
Para Firefox , Chrome y Safari , no pasa nada.
Para IE, el borde se aplica fuera de la casilla de verificación (no como parte de la casilla de verificación), y el efecto de sombreado "elegante" en la casilla de verificación desaparece (se muestra como una casilla de verificación pasada de moda).
Para Opera, el estilo de borde en realidad está aplicando el borde en el elemento de casilla de verificación.
Opera también maneja otros estilos en la casilla de verificación mejor que otros navegadores: el color se aplica como el color de la marca, el color de fondo se aplica como color de fondo dentro de la casilla de verificación (IE aplica el fondo como si la casilla de verificación estuviera dentro de un
<div>
fondo) .Conclusión
La solución más fácil es envolver la casilla de verificación dentro de lo
<div>
que otros han sugerido.Si desea controlar completamente la apariencia, tendrá que optar por el enfoque avanzado de imagen / javascript, también indicado por otros.
fuente
Las casillas de verificación de estilo (y muchos otros elementos de entrada para esa materia) no son realmente posibles con CSS puro si desea cambiar drásticamente la apariencia visual.
Su mejor opción es implementar algo como lo hace jqTransform que realmente reemplaza sus entradas con imágenes y aplica el comportamiento de JavaScript para imitar una casilla de verificación (u otro elemento para el caso)
fuente
No, aún no puede diseñar la casilla de verificación en sí, pero (finalmente) descubrí cómo diseñar una ilusión manteniendo la funcionalidad de hacer clic en una casilla de verificación. ¡Significa que puede alternarlo incluso si el cursor no está perfectamente quieto sin arriesgarse a seleccionar texto o activar arrastrar y soltar!
El ejemplo es usar un "botón" de extensión, así como algo de texto en una etiqueta, pero le da la idea de cómo puede hacer que la casilla de verificación sea invisible y dibujar cualquier cosa detrás de ella.
Esta solución probablemente también se ajuste a los botones de opción.
Lo siguiente funciona en IE9, FF30.0 y Chrome 40.0.2214.91 y es solo un ejemplo básico. Todavía puede usarlo en combinación con imágenes de fondo y pseudoelementos.
http://jsfiddle.net/o0xo13yL/1/
fuente
Aquí hay una manera simple (para usar antes o después de pseudo elementos / clases):
fuente
fuente
ponlo en un div y agrega un borde al div
fuente
fuente