Puis-je cacher le HTML5 nombre d'entrée de la zone de sélection numérique?
Est-il une manière cohérente sur tous les navigateurs pour masquer les nouveaux cases que certains navigateurs (google Chrome) le rendu HTML de saisie du numéro de type? Je suis à la recherche d'un CSS ou JavaScript méthode pour éviter les flèches haut/bas d'apparaître.
<input id="test" type="number">
- Pouvez-vous poster un exemple de code que vous utilisez? Une capture d'écran serait très bien aussi, donc nous savons ce que vous êtes en train de regarder. Je suis à la recherche d'
<input type="number" min="4" max="8" />
en Chrome et en voyant typique d'un champ de saisie avec les flèches haut et bas sur le côté. - Vous voyez exactement ce que je vois. J'essaie de garder le type=nombre de balisage pour s'assurer que les navigateurs mobiles apporter en place d'un clavier, et de prévenir les flèches haut et bas d'apparaître dans les navigateurs d'ordinateur.
- Si vous êtes en utilisant un certain nombre d'entrées, assurez-vous d'utiliser quelque chose qui joue de nice avec moderne iOS, Android, et les navigateurs de Bureau:
<input type="number" pattern="[0-9]*" inputmode="numeric">
. Plus d'infos: stackoverflow.com/a/31619311/806956 - Ce que je suggère de faire est d'écrire le balisage le long des lignes de
<input type="text" placeholder="number (digits only)" pattern="[0-9]+" class="validate number-validation" ... >
et à l'aide de jQuery Validati ou similaires pour gérer la validation. Je n'ai pas testé cette approche, qui est pourquoi c'est un commentaire, plutôt qu'une réponse.
Vous devez vous connecter pour publier un commentaire.
Cette CSS masque efficacement les spin-bouton pour les navigateurs webkit (l'ai testé sur Chrome 7.0.517.44 et Safari 5.0.2 (6533.18.5)):
CSS:
HTML:
Vous pouvez toujours utiliser l'inspecteur (webkit, éventuellement Firebug pour Firefox) pour regarder sur la correspondance de propriétés CSS pour les éléments qui vous intéressent, regardez pour les Pseudo-éléments. Cette image montre les résultats d'un élément input type="number":
display: none;
que la seule chose à l'intérieur du sélecteurtype=number
si vous avez à cacher ces flèches. E. g. actuellement, ils seraient toujours affiché à l'Opéra, et ils vont commencer à être affichée dans Firefox, IE, etc. lorsqu'ils mettent en œuvre ce type d'entrée.max=
etmin=
attributs sur<input>
donc des solutions de rechange telles quetype="text"
ne sont pas valide HTML5. Les gens aussi mentionner l'Opéra, y compris ces toupies. Est-il une solution pour l'Opéra similaire à Safari/Chrome?input::-webkit-clear-button
pour le bouton XFirefox 29 actuellement ajoute le soutien de nombre d'éléments, donc voici un extrait de code pour cacher les fileuses dans webkit et moz navigateurs:
CSS:
HTML:
Réponse courte:
CSS:
HTML:
Plus réponse:
À ajouter à la réponse existant...
Firefox:
Dans les versions actuelles de Firefox, l' (agent utilisateur) valeur par défaut de la
-moz-appearance
de la propriété sur ces éléments estnumber-input
. Changer la valeurtextfield
élimine efficacement les spinner.Dans certains cas, vous pouvez le cône à être caché initialement, et apparaissent alors sur le vol stationnaire/focus. (C'est le comportement par défaut dans google Chrome). Si oui, vous pouvez utiliser les éléments suivants:
CSS:
HTML:
Chrome:
Dans les dernières versions de Chrome, le (agent utilisateur) valeur par défaut de la
-webkit-appearance
de la propriété sur ces éléments est déjàtextfield
. Afin de supprimer le compteur, le-webkit-appearance
valeur de la propriété doit être modifié pournone
sur le::-webkit-outer-spin-button
/::-webkit-inner-spin-button
pseudo-classes (c'est-webkit-appearance: inner-spin-button
par défaut).CSS:
HTML:
Il est intéressant de souligner que
margin: 0
est utilisé pour supprimer la marge dans âgées versions de Chrome.Actuellement, comme de l'écriture, ici est la valeur par défaut de l'agent utilisateur de style sur le "inner-spin-bouton" pseudo-classe:
Selon Apple expérience de l'utilisateur le guide de codage pour le navigateur Safari mobile, vous pouvez utiliser les options suivantes pour afficher un clavier numérique à l'iPhone navigateur:
Un
pattern
de\d*
fonctionnera également.^-?(?:[1-9][0-9]*)?$
Essayez d'utiliser
input type="tel"
à la place. Il affiche un clavier avec des nombres, et il ne montre pas des cases. Il ne nécessite pas de JavaScript ou CSS ou des plugins ou autre chose.type=number
n'.input type="tel" pattern="[0-9]*"
type='tel'
attribut. Il ne vous permet pas de limite, max, min, ou à l'étape de l'intervalle. Tout ce t ont l'avantage de facilement limitant les entrées de numéros (et seulement dans Safari), il n'est pas en aucune façon ce que l'OP est à la recherche pour.valueAsNumber
ne contiennentNaN
. Peut conduire à de mauvaises UX.Seulement ajouter cette css pour supprimer spinner sur la saisie de numéro de
J'ai rencontré ce problème avec un
input[type="datetime-local"]
, qui est similaire à ce problème.Et j'ai trouvé un moyen de surmonter ce genre de problèmes.
Tout d'abord, vous devez activer chrome ombre-racine de fonction par "DevTools -> Paramètres -> Général> Éléments -> Afficher le nom d'utilisateur de l'agent de l'ombre DOM"
Ensuite, vous pouvez voir tous les l'ombre des éléments du DOM, par exemple, pour
<input type="number">
, la totalité de l'élément avec l'ombre DOM est:HTML:
Et selon ces informations, vous pouvez préparer un peu de CSS pour masquer les éléments indésirables, tout comme @Josh dit.
Pas ce que vous avez demandé, mais je le fais à cause de l'accent bug dans WebKit avec compteurs situés:
Il pourrait vous donner une idée pour vous aider avec ce que vous avez besoin.
C'est la plus meilleure réponse que je voudrais suggérer au survol de la souris et souris sans fil
CSS:
HTML:
Sur Firefox pour Ubuntu, en utilisant seulement
a fait le tour pour moi.
Ajoutant
Me conduirait à
chaque fois que j'ai essayé. De même pour l'intérieur bouton spin.
-webkit-*
est pour Chrome,-moz-*
est pour mozilla firefox. C'est pourquoi il ne marche pas pour vous.Pour faire ce travail dans Safari, j'ai trouvé l'ajout !important de la webkit forces d'ajustement sur le bouton spin pour être caché.
Je suis encore avoir de la difficulté à travailler sur une solution pour l'Opéra en tant que bien.
Peut-être modifier le nombre d'entrée avec javascript pour la saisie de texte lorsque vous ne voulez pas un spinner;
et à empêcher l'utilisateur d'entrer du texte;
alors le javascript de modifier à nouveau le cas où vous souhaitez un spinner;
il a bien fonctionné pour mes fins
vous pouvez utiliser ce simple code dans votre fichier CSS: