这个问题受到了这个问题的启发,其中最受欢迎的回答建议使用HTML5的一个特性。对我来说,这确实是一个好方法,但它让我好奇能否在一般情况下使用未来规范的功能。
HTML 5提供了很多不错的改进,其中许多可以在当前浏览器中使用而不会引起问题。
以下是一些例子:
// new, simple HTML5 doctype (puts browsers in standards mode)
<!doctype HTML>
// new input types, for easy, generic client side validation
<input type="email" name="emailAddress"/>
<input type="number" name="userid"/>
<input type="date" name="dateOfBirth"/>
// new "required" attribute indicates that a field is required
<input type="text" name="userName" required="true"/>
// new 'data-' prefixed attributes
// for easy insertion of js-accessible metadata in dynamic pages
<div data-price="33.23">
<!-- -->
</div>
<button data-item-id="93024">Add Item</button>
许多这些新功能旨在使浏览器能够自动验证表单,并为它们提供更好的输入(例如日期选择器)。其中一些只是方便,似乎是为未来做好准备。据我所知,它们目前不会在现有浏览器中引起任何问题,并且它们允许干净、通用的客户端代码。
然而,尽管它们在HTML5中都是有效的,但它们对于HTML4来说却无效,而此时HTML5仍然是一份草案。
提前使用这些功能是个好主意吗?
它们是否存在着我没有意识到的浏览器实现问题?
我们是否应该开发现在就利用HTML 5草案功能的网页?