2012-11-07 8 views
13

Ricevo errori di convalida con l'attributo inputmode su aree di testo e campi di testo. Il validatore mi dice Inputmode di attributo non consentito sull'ingresso di elemento in questo punto ma the HTML5 spec indicates that it is allowed.L'attributo inputmode è valido (nei moduli HTML5) o no?

C'è davvero qualcosa di sbagliato in questo codice, o il validatore è in errore?

Ecco un caso bare bones che produce esattamente questo tipo di errore di convalida (due volte), in un caso su un input di posta elettronica e sull'altro su un'area di testo.

<!DOCTYPE HTML> 
<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    </head> 
    <body> 
    <form method="post" action="contactme.php">   
     <label class='pas block'> 
     Your E-Mail:<br/> 
     <input type='email' name='email' required inputmode='latin' placeholder='your e-mail here' /> 
     </label> 
     <label class='pas block'> 
       Your Message:<br/> 
       <textarea name='message' required inputmode='latin' placeholder='and your message here!'></textarea> 
     </label> 
    </form> 
    </body> 
</html> 
+0

Forse il validatore non è un validatore HTML5 o in modalità HTML5 –

+0

Ho provato sia il validatore w3c sia quello di whatwg. Entrambi i validatori sono in modalità html5 e (ad esempio perché) questo esempio ha un doctype html5 – brennanyoung

+0

Forse 'inputmode' non può essere combinato con (alcuni valori di)' type'? –

risposta

3

Le specifiche HTML5 dice

I seguenti attributi di contenuti non devono essere specificati e non si applicano all'elemento: accettare, alt, controllato, dirname, FormAction, formenctype, formmethod, formnovalidate, formtarget , altezza, inputmode, max, min, src, step e width.

è sotto dettagli contabile a https://html.spec.whatwg.org/multipage/input.html#e-mail-state-(type=email)

+8

Questa descrizione della contabilità è specifica per gli elementi '[tipo = email]' e per lo stato di testo e ricerca ([specifica] (http://www.whatwg.org/specs/web-apps/current-work/multipage/states -of-the-type-attribute.html # text- (type = text) -state-and-search-state- (type = search))) dice * I seguenti attributi del contenuto dell'elemento input, attributi IDL e metodi seguenti apply to the element: ..... * *** inputmode *** – rhgb

9

Inoltre, si veda la tabella su cui attribuisce applicano ai diversi tipi di input qui: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#attr-input-type

L'attributo "inputmode" si applica solo a "testo" e "ricerca".

In un'altra nota, "inputmode" non è un attributo HTML5 W3C, ma è un attributo HTML 5.1 W3C (almeno nel momento in cui sto scrivendo questo).

Prova http://www.OnlineWebCheck.com/ per messaggi di errore/avviso migliori.

+0

Grazie - questo grafico è molto utile per chiarire (almeno per me) quali opzioni/attr si applicano a quali tipi di input. – dontGoPlastic

1

Cinque anni dopo la questione è stato chiesto, alcuni potrebbero chiedersi perché alcune delle proprietà elencate da @dsas non fa scattare tali errori, come enctype La risposta è semplice supporto, mentre enctype per esempio ha ottenuto un ampio sostegno inputmethod è supportato solo da IE11 e Edge 14, per maggiori informazioni fare clic su here