BBC嚴格的CSS編碼規範詳解
本文探討BBC的CSS編碼規範,其嚴格程度在業界聞名,強調最佳實踐、無CSS/JS支持下的可讀性以及W3C標準的遵守。
核心要點:
!important
,強制要求頁面背景顏色,以及使用壓縮的外部樣式表。內聯樣式被禁止,外部CSS文件不能使用@import
加載,以避免潛在的瀏覽器緩存問題。 通用CSS原則:
BBC使用XHTML 1.0 Strict作為內容載體,指南規定網頁內容必須在不啟用CSS或JavaScript的情況下可讀。許多開發者為了快速添加最新的jQuery小部件而忽略了這一點。大多數瀏覽器(或Web Developer Toolbar等擴展程序)允許禁用CSS和腳本。如果內容不可讀,那麼Google和屏幕閱讀器也無法讀取它。根據指南,所有CSS都必須符合已發布的W3C建議。這可能會導致一些問題,因為它似乎排除了供應商前綴屬性,例如-moz-border-radius
和-webkit-box-shadow
。然而,BBC網站確實謹慎地使用了它們。 !important
被禁止,因為它會覆蓋用戶樣式。這有點苛刻,因為它對IE6修復很有用。話雖如此,當應該解決級聯問題的根本原因時,我也曾濫用它來進行快速而簡陋的修改。最後,如果你已經放棄了IE6,請為仍在IE5.5中進行測試的BBC編碼人員考慮一下! IE5.5中的CSS尤其糟糕:它試圖解析屬性,但卻慘遭失敗。
CSS實現:
所有CSS都以壓縮的外部樣式表的形式實現,儘管當某個規則對特定頁面必需時,HTML頭部中的CSS是允許的。內聯樣式被禁止。這很好。任何被發現使用內聯樣式的編碼人員都應該吊銷其Web開發許可證!有趣的是,外部CSS文件不能使用@import
加載,因為它會影響瀏覽器緩存。是這樣嗎?我懷疑在現代瀏覽器中情況已不再如此。
排版和顏色:
必須在所有font-family
屬性的末尾添加一個通用的字體名稱(serif、sans-serif、cursive或monospace)。同樣,這是開發人員經常忘記的事情:並非每個人的電腦上都有Arial或Helvetica。我喜歡這個雙重否定規則:> 排版大小不得使用在所有瀏覽器中不可調整大小的單位,例如px和pt,打印樣式表除外。
BBC建議使用em、%或關鍵字值,並且在任何一級瀏覽器中將大小增加兩步後,文本必須保持可讀性。我敢打賭,這將是一場測試噩夢!最後,開發人員必須定義頁面背景顏色。在我的一台電腦上,默認背景色設置為令人作嘔的綠色後,我就把這條規則紋在了我的額頭上。
開發者天堂還是地獄?
如果您在該行業工作了一段時間,您可能已經吸收了BBC制定的許多指南。但是,新的開發者如何應對呢?積極的一面是,這些期望是有據可查的,它可以幫助編碼人員避免基本的可用性錯誤。然而,開發本身就足夠艱難了——大多數人難以應付為24種相互關聯的技術定義的多個規則和規章。您的公司是否執行嚴格的編碼指南?它們是鐵板一塊還是相當靈活?它們是合理的還是荒謬的?它們是否定期更新,或者您仍在為Netscape 3.0編寫代碼?指南是否有助於或阻礙您的日常開發任務?我還想听取BBC任何開發人員的意見……您是否嚴格遵守規則,或者在經理不在時偷偷使用了!important
?
(以下為FAQ部分,與原文保持一致,不再進行偽原創)
The BBC’s CSS coding standards are designed to ensure consistency and readability across all their digital content. They emphasize the use of lowercase, hyphen-separated class and ID names, and discourage the use of ID selectors for styling. On the other hand, Google’s style guide encourages the use of meaningful or generic ID and class names, and WordPress’s standards recommend specific naming conventions for classes and IDs. Each of these standards has its own unique approach, but all aim to promote clean, efficient, and maintainable code.
The BBC’s CSS coding standards recommend using vendor prefixes for CSS properties that are not yet standardized or fully supported across all browsers. This ensures that the CSS code will work correctly across different browsers, even if they interpret certain CSS properties differently. This is a common practice in many CSS coding standards, including those of Google and Mozilla.
BBC訂購CSS屬性的指南是什麼?
> BBC的CSS編碼標準沒有為CSS屬性指定特定順序。但是,他們確實建議將相關屬性分組在一起以提高可讀性。在許多CSS編碼標準中,這是一種常見的做法,因為它使代碼更易於理解和維護。> BBC的CSS編碼標準如何使用媒體查詢的使用? BBC的CSS編碼標準建議使用媒體查詢使網站響應迅速並確保其在不同設備上正確顯示。他們建議將媒體查詢放置在CSS文件的末尾,並根據視口寬度將其從最小到最大的組織。
。以上是您是否遵守嚴格的BBC風格的CSS編碼標準?的詳細內容。更多資訊請關注PHP中文網其他相關文章!