为什么已经支持HTML5 input type datetime的浏览器将其删除了?

119

我在想为什么所有的浏览器,比如Chrome版本高于26,在过去支持输入datetime的情况下,现在却将其移除了?

这听起来像是这篇文章的重复,但那篇文章已经很旧了。

看起来HTML WG更喜欢datetime-local(w3c)而不是datetime (w3c),但为什么?

查看此链接了解功能开发时间线。

别人怎么说:

根据mobilexweb.com的说法,在iOS中,它被弃用了,因为“它看起来太像datetime输入类型了”。

Google Chrome之后,现在iOS上的Safari也不再支持datetime输入类型,而是会回退到文本输入。这种类型已经在标准中被弃用,以datetime-local或使用两个输入框date和time来代替。问题在于,从版本5.0到6.1,datetime与iOS兼容;如果你正在使用它,请小心!

区别是什么?

datetime-local只包含日期和时间元素,而datetime还包含时区。这很有用,因为当客户端的时区与服务器的时区不同时,您可能希望采取不同的行动。

为什么这很重要?

如果网页问道:“您希望我什么时候给您打电话?”,用户选择了“明天下午3点”,那么您需要在什么时间回复他呢?是UTC时间还是欧洲中部时间(CET)?


7
HTML5仍然是“候选推荐标准”,尚未最终确定,这可能是为什么事情不断变化的原因。 - gen_Eric
真的,但据我所见,建议并没有改变,所以这似乎是浏览器供应商的选择。 - Patrick Hofman
我猜你得找一个外部库或者自己动手做... - LatinSuD
2
Webmasters.SE-HTML 5.1中datetime-local被删除了吗?有关于date,time,datetime,和datetime-local未来的一些有用信息。 - user247702
2个回答

71
我能想到的唯一原因是浏览器厂商不再相信该标准将获得批准,因此从其代码中删除了实现。
支持这种想法的证据是:W3C刚刚从他们的草稿中删除了datetimedatetime-local
浏览器厂商最终将放弃对它们的支持。
根据html5test,大多数当前浏览器都删除了这两种输入类型的支持。
最新进展:
  • datetime-local重新回到了草案中;
  • 较新的规范页面没有显示datetime,但它确实显示了datetime-local。听起来它又回来了,并且即将重新得到支持!
此外,请注意Webmasters.SE上的相关帖子:HTML 5.1是否删除了datetime-local?

7
如果不是IE、Chrome和Firefox的开发人员定义标准,那么谁来定义标准?为什么他们要从浏览器中删除完全正常的东西? - Yoda
5
我完全同意。它起作用了。它工作得很好。我需要它。为什么要移除它? - Patrick Hofman
@Yoda:看起来datetime-local至少已经重新列入规划了。 - Patrick Hofman
2
是的,令人遗憾的是,我们开始看到两个工作组W3C(W3C版本的输入)和WHATWG(WHATWG版本的输入)之间出现了差异。我曾经担心这一天会到来... - Diego
5
我喜欢这个问题在互联网诞生25年后仍未得到解决。我认为这基本概括了整个软件行业。 - Matt Lacey
显示剩余2条评论

9

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接