說到開發(fā)一個運行在現(xiàn)代網(wǎng)絡(luò)中的網(wǎng)站:Web開發(fā)人員需要選擇虛擬主機(jī)平臺和底層數(shù)據(jù)存儲,準(zhǔn)備編寫HTML、CSS和JavaScript用的工具,要有設(shè)計執(zhí)行方式,以及一些可用的JavaScript庫/框架。
在將任務(wù)分解為這幾步之后,接下來要做的就簡單多了,可以去網(wǎng)上找文章,瀏覽論壇,看看那些能提供更好的Web體驗提示的示例。
然而不管是走哪條路,犯錯卻是每一個開發(fā)人員都不可避免的。雖然有些錯誤與某一個具體的行為相關(guān),但有些錯誤卻是所有Web開發(fā)人員都需要面對的挑戰(zhàn)。
因此,通過研究,體驗和觀察,我總結(jié)了Web開發(fā)人員常犯的10個錯誤——以及如何避免這些錯誤。
以下要點沒有特定的順序。
1)寫一些過時的HTML
錯誤:早期的互聯(lián)網(wǎng)比起我們現(xiàn)在,標(biāo)記的選擇要少得多。然而,舊習(xí)難改,現(xiàn)在很多開發(fā)人員寫的HTML就好像還身處20世紀(jì)一樣。
舉例來說,我們使用
元素用于布局,當(dāng)其他特定語義標(biāo)簽更適合的時候使用或
元素,在當(dāng)前HTML標(biāo)準(zhǔn)不受支持的時候使用
影響:遵從這種過時的HTML規(guī)則可能會導(dǎo)致標(biāo)記過于復(fù)雜,結(jié)果是在不同的瀏覽器中發(fā)生不同的行為。而且沒有了改進(jìn)瀏覽器的動力,因為沒有必要更新到最新的瀏覽器,如Microsoft Edge,哪怕是Internet Explorer版本(11、10、9)也變得沒有必要。
如何避免:停止使用
元素用于內(nèi)容布局,限制使用
元素來顯示表格數(shù)據(jù)。
例如可以去whatwg.org了解當(dāng)前可用的標(biāo)記選項。使用HTML去描述內(nèi)容是什么,而不是說明內(nèi)容如何展現(xiàn)。對于如何顯示內(nèi)容,請使用CSS(http://www.w
2)“明明在我的瀏覽器中是可行的……”
錯誤:開發(fā)人員往往會偏愛某一個特定的瀏覽器,或者特別討厭某一個,可能主要是因為對測試網(wǎng)頁視圖有所偏見。也有可能是因為從網(wǎng)上找到的代碼示例不能保證會如何呈現(xiàn)在其他瀏覽器中。此外,一些瀏覽器對風(fēng)格有不同的默認(rèn)值。
影響:以某一個瀏覽器為中心寫的網(wǎng)站,在其他瀏覽器中顯示時,其質(zhì)量將會很差。
如何避免:在開發(fā)過程中,在所有瀏覽器和版本中測試網(wǎng)頁是不切實際的。不過,每隔一段時間,在多個瀏覽器中檢查網(wǎng)站的樣子不失為一個好方法。
現(xiàn)在,不管你偏好的是什么平臺,總有免費的工具可用:免費的虛擬機(jī)、網(wǎng)站掃描儀。如http://brows
如果你的網(wǎng)站正在使用的CSS特性是專為某一瀏覽器特制的,那么注意它的引擎前綴,如-webkit-,-moz-和-ms-。對于行業(yè)在這方面的發(fā)展趨勢指導(dǎo),那么可以閱讀以下參考:
?Microsoft Edge開發(fā)博客: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
上面這些參考資料解說了引擎前綴的革新,以及你還可以點擊這里——這個網(wǎng)站提供了一些如何摒棄引擎前綴的實用建議。