Tengo un sitio que es principalmente para usuarios móviles pero también para escritorio.
En Mobile Safari, el uso <input type="number">
funciona muy bien porque muestra el teclado numérico en los campos de entrada que solo deben contener números.
Sin embargo, en Chrome y Safari, el uso de entradas numéricas muestra botones giratorios en el lado derecho del campo, que parece una mierda en mi diseño. Realmente no necesito los botones, porque de todos modos son inútiles cuando necesitas escribir algo como un número de 6 dígitos.
¿Es posible deshabilitar esto con -webkit-appearance
algún otro truco de CSS? Lo he intentado sin mucha suerte.
type="text"
por otros motivos y solo cambió a número para la función de teclado numérico, puede usarpattern="[0-9]*"
para obtener la función de teclado, lo que le permite conservartype="text"
. Ver stackoverflow.com/questions/6171903/…Respuestas:
El siguiente CSS funciona tanto para Chrome como para Firefox
fuente
Descubrí que hay una segunda parte de la respuesta a esto.
La primera parte me ayudó, pero todavía tenía un espacio a la derecha de mi
type=number
entrada. Había puesto a cero el margen en la entrada, pero aparentemente también tuve que poner a cero el margen en la rueda giratoria.Esto lo solucionó:
fuente
min=0.01
(ymax
a algún valor arbitrario) en mi elemento de entrada, pero preferiría que la rueda de desplazamiento solo suba y baje la página. Estoy usando AngularJS y no puedo encontrar nada atm.No estoy seguro de si esta es la mejor manera de hacerlo, pero esto hace que los hiladores desaparezcan en Chrome 8.0.552.5 dev:
fuente
-webkit-outer-spin-button
lugar.Parece imposible evitar que aparezcan hilanderos en Opera. Como solución temporal, puede dejar espacio para los hilanderos. Por lo que puedo decir, el siguiente CSS agrega suficiente relleno, solo en Opera:
fuente
También puedes ocultar la ruleta con el siguiente truco:
fuente