更好的形式之路:有用的库和polyfill
正如我们上面几次提到的,如果您想完全控制“丑陋”的控件类型,则别无选择,只能依靠JavaScript。在“ 如何构建自定义表单控件”一文中,您将看到如何自己执行此操作,但是那里有一些非常有用的库可以帮助您:
Uni-form是一个标准化表单标记的框架,并使用CSS对其进行样式设置。与jQuery一起使用时,它还提供了一些其他功能,但这是可选的。
Formalize是对常见JavaScript框架(例如jQuery,Dojo,YUI等)的扩展,有助于规范化和自定义表单。
Niceforms是一种独立的JavaScript方法,可提供对Web表单的完全自定义。您可以使用一些内置主题,也可以创建自己的主题。
以下库不仅与表单有关,还具有处理HTML表单的非常有趣的功能:
jQuery UI提供了可自定义的小部件,例如日期选择器(特别注意可访问性)。
Twitter Bootstrap可以帮助您规范表格。
WebShim是一个巨大的工具,可以帮助您处理对浏览器HTML5的支持。Web表单部分可能真的很有帮助。
请记住,CSS和JavaScript可能会有副作用。因此,如果您选择使用这些库之一,则应始终具有健壮的后备HTML,以防脚本失败。脚本可能失败的原因有很多,尤其是在移动世界中,并且您需要设计网站或应用程序以尽可能地处理这些情况。