È un known bug nel browser Webkit Android predefinito. Come da this QuirksMode page, puoi vedere che molte versioni di Android ne soffrono. D'altra parte, Chrome per Android non lo fa.
Ho creato un semplice shim JavaScript (correzione) per questo. Per prima cosa, leggi questa domanda How to display placeholder's text in HTML5's number-typed input, quindi se vuoi ancora usare un segnaposto come quello, prova my solution gist.
TL; DR;
Lascia il tuo margine come ti aspetteresti;
<input type="number" placeholder="Enter some numbers" />
Quindi eseguire uno di questi script dopo il caricamento della pagina;
// jQuery version
$("input[type='number']").each(function(i, el) {
el.type = "text";
el.onfocus = function(){this.type="number";};
el.onblur = function(){this.type="text";};
});
// Stand-alone version
(function(){ var elms = document.querySelectorAll("input"), i=elms.length;
while(i--) {
var el=elms[i]; if(el.type=="number"])
el.type="text",
el.onfocus = function(){this.type="number";},
el.onblur = function(){this.type="text";};
}
})();
Grazie aaronsnoswell :) – Shinoj
Sotto Jellybean questa soluzione funziona solo in parte il tempo, portando a mancare le tastiere in risposta al tocco dell'utente. L'esecuzione di questo codice in modalità di acquisizione sembrava attenuare un sacco di questi problemi. –
@KevinDecker Grazie per averlo testato: puoi spiegare cosa intendi per modalità di acquisizione? – aaronsnoswell