No Firefox 28, estou usando <input type="number">
ótimos trabalhos, pois exibe o teclado numérico nos campos de entrada que devem conter apenas números.
No Firefox 29, o uso de entradas numéricas exibe botões giratórios no lado direito do campo, que parece uma porcaria no meu design. Eu realmente não preciso dos botões, porque eles são inúteis quando você precisa escrever algo como um número de 6 a 10 dígitos.
É possível desativar isso com CSS ou jQuery?
type="number"
. Você pode usartype="text"
e opattern
atributo para definir uma regex para garantir que seja um número.type="number"
é necessário para os navegadores móveis mostrarem o teclado numérico em vez do teclado completo.<input type="tel">
são apenas números e não inclui giradores.type="text"
é uma péssima idéia, pois os dispositivos sensíveis ao toque mostrarão o teclado errado.Respostas:
De acordo com este post do blog , você precisa definir
-moz-appearance:textfield;
oinput
.fonte
@-moz-document url-prefix() { ... }
e ele faz o que eu quero: oculta os controles giratórios no Firefox, onde ficam mal, mas os mantém vivos em outros navegadores, incluindo os que trazem o teclado numérico como o OP mencionado.Vale ressaltar que o valor padrão
-moz-appearance
desses elementos estánumber-input
no Firefox.Se você deseja ocultar o botão giratório por padrão, pode configurá-lo
-moz-appearance: textfield
inicialmente e se deseja que o botão giratório apareça em:hover
/:focus
, você pode substituir o estilo anterior por-moz-appearance: number-input
.Eu pensei que alguém poderia achar isso útil, já que recentemente tive que fazer isso na tentativa de melhorar a consistência entre o Chrome / FF (já que esse é o modo como as entradas de número se comportam por padrão no Chrome).
Se você deseja ver todos os valores disponíveis
-moz-appearance
, pode encontrá-los aqui (mdn).fonte
Em
SASS
/SCSS
style, você pode escrever assim:Definitivamente esse estilo de código pode ser usado no
PostCSS
.fonte
fonte
Diante do mesmo problema após a atualização do Firefox para 29.0.1, ela também está listada aqui https://bugzilla.mozilla.org/show_bug.cgi?id=947728
Soluções: Eles (pessoal da Mozilla) corrigiram isso introduzindo suporte para "-moz-aparecimento" para
<input type="number">
. Você só precisa ter um estilo associado ao seu campo de entrada com "-moz-appearance:textfield;
".Eu prefiro a maneira CSS Ex: -
Ou
Você também pode fazer isso em linha:
fonte
Misturei algumas respostas das respostas acima e de Como remover as setas da entrada [type = "number"] no Opera no scss:
fonte
Isso funcionou para mim:
Resolvido no Firefox, Safari, Chrome. Além disso,
-moz-appearance: textfield;
não é mais suportado ( https://developer.mozilla.org/en-US/docs/Web/CSS/appearance )fonte