最近一直要求自己在Blogging的時候,要注意頁面符合w3c的標准。發現了一個很有趣的事情,如果自己都是按NVU的提示來寫的話,HTML的代碼質量很高;但是自己如果有預見性的寫的話,出錯的概率之大足以嚇我一跳。
另外發現在寫代碼的時候,習慣很重要。
拿wordpress.com提供的theme的模板來説,好幾個模板在首頁會出現這様的錯誤<p>
<!-- this is ugly -->
<span class="next"></span>
<span class="previous">
<a href="http://ifox.wordpress.com/page/2/">
Previous Posts</a></span>
</p>
在w3c的標准中,是不能出空的東西,即<span class="next"></span>
很明顯是php用loop循環,或者for循環没有考慮邊界問題。
第一頁出錯,就以為這最後一頁也會出錯。而給用户(user)來修改的時候,就哈哈哈,麻煩了。要麽加點東西進去,要麽减點東西。加一點兒東西,最多就是兩處會出錯,加的這裏,另一個是這部分代碼的結尾可能會出錯。减的話,就不好説了,一般是影響這一片。還是拿頁面來説,减的話最直接的就是對不齊。
其實,如果一開始就按着標准來寫代碼的就會少出點兒錯。
Michael Howard和David LeBlanc在Writing Secure Code, Second Edition裏面就舉例説:
M$在windows裏面實現一個功能要1人/天的話,修正這個如果不健壯的功能至少需要10人/天。
有些東西要出了錯,栽了跟頭才會明白。
在xhtml+css中會出現<div> </div>讓新手費解,其實這様做的原因是<div class="clear"> </div>讓有些人覺得寫class="clear"浪費時間而已。再久而久之就寫一個{,馬上會補上};或者還是舉Blog中的例子,寫了<p>,馬上會接着繼續寫</p>。
而更習慣這様<ul><ol><li></li></ol></ul>的方式書寫代碼。
No comments:
Post a Comment