Является ли атрибут inputmode действительным (в формах HTML5) или нет?
Я получаю ошибки проверки с атрибутом inputmode в текстовых областях и текстовых полях. Валидатор говорит мне, что Inputmode атрибута не разрешен для ввода элемента в этот момент, но спецификация HTML5 указывает, что это разрешено.
На самом деле что-то не так с этим кодом, или ошибка проверки подлинности?
Вот пример с костями, который будет производить именно такую ошибку проверки (дважды), в одном случае на входе электронной почты, а с другой - в текстовом поле.
<!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>
Ответы
Ответ 1
В спецификации HTML5
Следующие атрибуты контента не должны указываться и не применяются к элементу: accept, alt, checked, dirname, formaction, formenctype, formmethod, formnovalidate, formtarget, height, inputmode, max, мин, src, шаг и ширина.
Он под подробностями бухгалтерского учета в https://html.spec.whatwg.org/multipage/input.html#e-mail-state-(type=email)
Ответ 2
Также см. диаграмму о том, какие атрибуты применяются к различным типам ввода здесь:
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#attr-input-type
Атрибут inputmode применяется только к "text" и "search".
ОБНОВЛЕНИЕ 2019-09-04: "inputmode" теперь является глобальным атрибутом (для WHATWG) и может быть задан для любого элемента HTML: https://html.spec.whatwg.org/multipage/dom.html#global-attributes
Другая справочная страница для "inputmode":
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode
С другой стороны, "inputmode" не является атрибутом W3C HTML5, но это атрибут W3C HTML 5.1 (по крайней мере, на момент написания этой статьи). ОБНОВЛЕНИЕ 2019-09-04: "inputmode" был удален из HTML 5.2 и HTML 5.3.
Ответ 3
Через пять лет после того, как задан вопрос, некоторые могут задаться вопросом, почему некоторые свойства, перечисленные @dsas, не вызывают таких ошибок, например enctype
Ответ простой поддержки, в то время как enctype
, например, получил широкую поддержку
inputmethod
поддерживается только с IE11 и Edge 14, для получения дополнительной информации нажмите здесь