W przeglądarce Firefox 28 używam <input type="number">
działa świetnie, ponieważ wyświetla klawiaturę numeryczną w polach wprowadzania, które powinny zawierać tylko cyfry.
W przeglądarce Firefox 29 za pomocą wprowadzania liczb wyświetla się przyciski spinania po prawej stronie pola, które w moim projekcie wyglądają jak bzdury. Naprawdę nie potrzebuję przycisków, ponieważ są one bezużyteczne, gdy i tak musisz napisać coś w rodzaju 6 ~ 10 cyfr.
Czy można to wyłączyć za pomocą CSS lub jQuery?
type="number"
. Możesz użyćtype="text"
ipattern
atrybutu, aby ustawić wyrażenie regularne, aby upewnić się, że jest liczbą.type="number"
jest wymagane, aby przeglądarki mobilne wyświetlały klawiaturę numeryczną zamiast pełnej klawiatury.<input type="tel">
to tylko liczby i nie obejmuje błystek.type="text"
jest złym pomysłem, ponieważ urządzenia dotykowe pokażą niewłaściwą klawiaturę.Odpowiedzi:
Zgodnie z tym postem na blogu musisz ustawić
-moz-appearance:textfield;
nainput
.źródło
@-moz-document url-prefix() { ... }
i robi to, co chcę: ukrywa błystki w Firefoksie, gdzie wyglądają źle, ale utrzymują je przy życiu w innych przeglądarkach, w tym tych, które wyświetlają klawiaturę numeryczną, jak wspomniano PO.Warto zauważyć, że domyślną wartością
-moz-appearance
tych elementów jestnumber-input
Firefox.Jeśli chcesz ukryć domyślnie przędzarkę, możesz ustawić ją
-moz-appearance: textfield
początkowo, a jeśli chcesz, aby przędzarka pojawiła się na:hover
/:focus
, możesz zastąpić poprzednią stylizację-moz-appearance: number-input
.Pomyślałem, że ktoś może uznać to za pomocne, ponieważ ostatnio musiałem to zrobić, próbując poprawić spójność między Chrome / FF (ponieważ jest to domyślny sposób, w jaki dane liczbowe zachowują się domyślnie w Chrome).
Jeśli chcesz zobaczyć wszystkie dostępne wartości
-moz-appearance
, możesz je znaleźć tutaj (mdn).źródło
W
SASS
/SCSS
style możesz pisać w następujący sposób:Zdecydowanie można użyć tego stylu kodu
PostCSS
.źródło
źródło
W obliczu tego samego problemu po aktualizacji Firefox do 29.0.1, jest to również wymienione tutaj https://bugzilla.mozilla.org/show_bug.cgi?id=947728
Rozwiązania: Oni (chłopaki z Mozilli) naprawili to, wprowadzając obsługę „-moz-wygląd” dla
<input type="number">
. Musisz tylko mieć styl powiązany z polem wejściowym za pomocą „-moz-appearance:textfield;
”.Wolę sposób CSS Np .: -
Lub
Możesz to zrobić również w linii:
źródło
Wymieszałem kilka odpowiedzi z powyższych odpowiedzi i z Jak usunąć strzałki z wejścia [type = "number"] w Operze w scss:
źródło
To działało dla mnie:
Rozwiązany w Firefox, Safari, Chrome. Ponadto
-moz-appearance: textfield;
nie jest już obsługiwany ( https://developer.mozilla.org/en-US/docs/Web/CSS/appearance )źródło