说到开发一个运行在现代网络中的网站:Web开发人员需要选择虚拟主机平台和底层数据存储,准备编写HTML、CSS和JavaScript用的工具,要有设计执行方式,以及一些可用的JavaScript库/框架。
在将任务分解为这几步之后,接下来要做的就简单多了,可以去网上找文章,浏览论坛,看看那些能提供更好的Web体验提示的示例。
然而不管是走哪条路,犯错却是每一个开发人员都不可避免的。虽然有些错误与某一个具体的行为相关,但有些错误却是所有Web开发人员都需要面对的挑战。
因此,通过研究,体验和观察,我总结了Web开发人员常犯的10个错误——以及如何避免这些错误。
以下要点没有特定的顺序。
1)写一些过时的HTML
错误:早期的互联网比起我们现在,标记的选择要少得多。然而,旧习难改,现在很多开发人员写的HTML就好像还身处20世纪一样。
举例来说,我们使用
元素用于布局,当其他特定语义标签更适合的时候使用或
元素,在当前HTML标准不受支持的时候使用
影响:遵从这种过时的HTML规则可能会导致标记过于复杂,结果是在不同的浏览器中发生不同的行为。而且没有了改进浏览器的动力,因为没有必要更新到最新的浏览器,如Microsoft Edge,哪怕是Internet Explorer版本(11、10、9)也变得没有必要。
如何避免:停止使用
元素用于内容布局,限制使用
元素来显示表格数据。
例如可以去whatwg.org了解当前可用的标记选项。使用HTML去描述内容是什么,而不是说明内容如何展现。对于如何显示内容,请使用CSS(http://www.w
2)“明明在我的浏览器中是可行的……”
错误:开发人员往往会偏爱某一个特定的浏览器,或者特别讨厌某一个,可能主要是因为对测试网页视图有所偏见。也有可能是因为从网上找到的代码示例不能保证会如何呈现在其他浏览器中。此外,一些浏览器对风格有不同的默认值。
影响:以某一个浏览器为中心写的网站,在其他浏览器中显示时,其质量将会很差。
如何避免:在开发过程中,在所有浏览器和版本中测试网页是不切实际的。不过,每隔一段时间,在多个浏览器中检查网站的样子不失为一个好方法。
现在,不管你偏好的是什么平台,总有免费的工具可用:免费的虚拟机、网站扫描仪。如http://brows
如果你的网站正在使用的CSS特性是专为某一浏览器特制的,那么注意它的引擎前缀,如-webkit-,-moz-和-ms-。对于行业在这方面的发展趋势指导,那么可以阅读以下参考:
Microsoft Edge开发博客:A break from the past, part 2: Saying goodbye to ActiveX, VBScript, attachEvent
QuirksMode.org:CSS vendor prefixes considered harmful
Bruce Lawson: On Internet Explorer supporting -webkit- vendor prefixes
上面这些参考资料解说了引擎前缀的革新,以及你还可以点击这里——这个网站提供了一些如何摒弃引擎前缀的实用建议。