Html 为什么输入元素上的inputmode属性没有像MDN文档所描述的那样为我提供虚拟键盘?

Html 为什么输入元素上的inputmode属性没有像MDN文档所描述的那样为我提供虚拟键盘?,html,Html,如中所述,该属性在任何流行浏览器中都不起作用,因为它不显示虚拟键盘 我在这里重现代码片段: <html> <label for = "txtName">Name</label>&nbsp;<input name = "txtName" type = "text" inputmode = "text" /><br /> <label for = "txtAge">Age</label>&am

如中所述,该属性在任何流行浏览器中都不起作用,因为它不显示虚拟键盘

我在这里重现代码片段:

<html>
    <label for = "txtName">Name</label>&nbsp;<input name = "txtName" type = "text" inputmode = "text" /><br />
    <label for = "txtAge">Age</label>&nbsp;<input name = "txtAge" type = "text" inputmode = "numeric" /><br />
    <label for = "txtEmail">Email</label>&nbsp;<input name = "txtEmail" type = "text" inputmode = "email" /><br />
    <label for = "txtUrl">Url</label>&nbsp;<input name = "txtUrl" type = "text" inputmode = "url" /><br />
    <label for = "txtPhoneNumber">Phone Number</label>&nbsp;<input name = "txtPhoneNumber" type = "text" inputmode = "tel" /><br />
</html>

名称
年龄
电子邮件
Url
电话号码

我遗漏了什么吗?

我相信这只用于手机选择显示哪种类型的键盘

正如文章所述:inputmode属性告诉浏览器在带有动态键盘的设备上显示哪个键盘。inputmode属性应用于文本、搜索和密码输入类型以及。 此属性仅在具有动态键盘的设备上的浏览器中相关

此属性仅在具有动态键盘的设备上的浏览器中相关

“inputmode”只是提示浏览器显示哪个虚拟键盘,它不启用虚拟键盘。在触摸屏手机和笔记本电脑上,它应该工作并显示正确的键盘(在大多数设备上,并非在所有设备上都保证)。
而对于其他PC,您可以尝试一些虚拟键盘扩展,例如,但也不能保证它能正常工作。
也可用于电话、电子邮件和url

<input type="tel">
<input type="email">
<input type="url">


为了更好地支持各种设备和浏览器。

根据,默认情况下,在任何主要浏览器中都不支持此功能。所以今天它不会有任何效果。不过,看起来支持正在到来——Firefox有一个启用它的标志,Chrome有“正在开发”的标记,Edge说它“正在考虑中”。

谢谢。令人惊讶的是,HTML5上最权威的文档WHATWG living document()没有限定此属性仅适用于移动设备。它概括地说,它适用于所有用户代理。不过,你说的似乎是对的。谢谢。我知道您列出的新输入元素。然而,它们的支持还没有在所有浏览器上正确实现。就外观而言,它们都会优雅地降级到不受支持的
type=text
。但我离题了。没错,使用
键入
输入模式
没有多大区别。出于好奇,你从哪里选择答案的第一行(blockquote)?你能留下一个归属吗?“,这不是最好的引述地方,但他们说的绝对正确,所以我引用了它。我想我可以把它作为HTML5数百个功能之一,但进展缓慢。有趣的是,在这个问题被问到10天后,caniuse.com更新说Chrome v66将提供支持: