關於CSS的書寫規範和順序

来源:https://www.cnblogs.com/lamian77/archive/2019/10/09/11642674.html
-Advertisement-
Play Games

關於CSS的書寫規範和順序,是大部分前端er都必須要攻剋的一門關卡,如果沒有按照良好的CSS書寫規範來寫CSS代碼,會影響代碼的閱讀體驗。這裡總結了一個CSS書寫規範、CSS書寫順序供大家參考,這些是參考了國外一些文章以及我的個人經驗總結出來,我想對寫CSS的前端用戶來說是值得學習的。 CSS書寫順 ...


關於CSS的書寫規範和順序,是大部分前端er都必須要攻剋的一門關卡,如果沒有按照良好的CSS書寫規範來寫CSS代碼,會影響代碼的閱讀體驗。這裡總結了一個CSS書寫規範、CSS書寫順序供大家參考,這些是參考了國外一些文章以及我的個人經驗總結出來,我想對寫CSS的前端用戶來說是值得學習的。

 

 CSS書寫順序                      

 

 1.位置屬性  (position, top, right, z-index, display, float等)
 2.大小  (width, height, padding, margin)
 3.文字系列  (font, line-height, letter-spacing, color- text-align等)
 4.背景  (background, border等)
 5.其他  (animation, transition等)

 

   

 

 CSS書寫規範                      

 


 

 使用CSS縮寫屬性

 CSS有些屬性是可以縮寫的,比如padding,margin,font等等,這樣精簡代碼同時又能提高用戶的閱讀體驗。

 

  

 


 

 去掉小數點前的“0”

 

  

 


 

 簡寫命名

 很多用戶都喜歡簡寫類名,但前提是要讓人看懂你的命名才能簡寫哦!

 

  

 


 

 16進位顏色代碼縮寫

 有些顏色代碼是可以縮寫的,我們就儘量縮寫吧,提高用戶體驗為主。

 

  

 


 

 連字元CSS選擇器命名規範

 1.長名稱或片語可以使用中橫線來為選擇器命名。

 2.不建議使用“_”下劃線來命名CSS選擇器,為什麼呢?

  • 輸入的時候少按一個shift鍵;
  • 瀏覽器相容問題 (比如使用_tips的選擇器命名,在IE6是無效的)
  • 能良好區分JavaScript變數命名(JS變數命名是用“_”)

 

  

 


 

 不要隨意使用Id

 id在JS是唯一的,不能多次使用,而使用class類選擇器卻可以重覆使用,另外id的優先順序優先與class,所以id應該按需使用,而不能濫用。

 

  

 


 

 為選擇器添加狀態首碼

 有時候可以給選擇器添加一個表示狀態的首碼,讓語義更明瞭,比如下圖是添加了“.is-”首碼。

 

  

 

 CSS書寫順序                     

 


 

 常用的CSS命名規則

 頭:header
 內容:content/container
 尾:footer
 導航:nav
 側欄:sidebar
 欄目:column
 頁面外圍控制整體佈局寬度:wrapper
 左右中:left right center
 登錄條:loginbar
 標誌:logo
 廣告:banner
 頁面主體:main
 熱點:hot
 新聞:news
 下載:download
 子導航:subnav
 菜單:menu
 子菜單:submenu
 搜索:search
 友情鏈接:friendlink
 頁腳:footer
 版權:copyright
 滾動:scroll
 內容:content
 標簽:tags
 文章列表:list
 提示信息:msg
 小技巧:tips
 欄目標題:title
 加入:joinus
 指南:guide
 服務:service
 註冊:regsiter
 狀態:status
 投票:vote
 合作伙伴:partner

 


 

 註釋的寫法:

 /* Header */
 內容區
 /* End Header */

 


 

 Id的命名:

 1)頁面結構

 容器: container
 頁頭:header
 內容:content/container
 頁面主體:main
 頁尾:footer
 導航:nav
 側欄:sidebar
 欄目:column
 頁面外圍控制整體佈局寬度:wrapper
 左右中:left right center

 (2)導航

 導航:nav
 主導航:mainnav
 子導航:subnav
 頂導航:topnav
 邊導航:sidebar
 左導航:leftsidebar
 右導航:rightsidebar
 菜單:menu
 子菜單:submenu
 標題: title
 摘要: summary

 (3)功能

 標誌:logo
 廣告:banner
 登陸:login
 登錄條:loginbar
 註冊:register
 搜索:search
 功能區:shop
 標題:title
 加入:joinus
 狀態:status
 按鈕:btn
 滾動:scroll
 標簽頁:tab
 文章列表:list
 提示信息:msg
 當前的: current
 小技巧:tips
 圖標: icon
 註釋:note
 指南:guild
 服務:service
 熱點:hot
 新聞:news
 下載:download
 投票:vote
 合作伙伴:partner
 友情鏈接:link
 版權:copyright

 


 

 註意事項::

 1.一律小寫;
 2.儘量用英文;
 3.不加中槓和下劃線;
 4.儘量不縮寫,除非一看就明白的單詞。

 


 

 CSS樣式表文件命名

 主要的 master.css
 模塊 module.css
 基本共用 base.css
 佈局、版面 layout.css
 主題 themes.css
 專欄 columns.css
 文字 font.css
 表單 forms.css
 補丁 mend.css
 列印 print.css

 

 
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、判斷方法 1.判斷是否元素寬高為200的盒子 只需要看:邊框+內邊距+內容寬度/內容高度的值是否等於200 2.判斷是否內容寬高為100的盒子 只需要看:width和heght的值是否等於100 3.判斷是否元素空間寬高為300的盒子 只需要看:外邊距+邊框+內邊距+內容寬度/內容高度的值是否等 ...
  • /約定/ 讓我們輕裝上陣 一個功能頁(Page)的開發通常需要四大塊:配置、代碼、佈局、樣式。 這四大塊承載不同的方面,要獨立不混雜,又要整體融合。於是有了以下約定: 每一塊 獨立的文件、相同的文件名、不同的擴展名。 按約定行事,自動融合。 於是,一個小程式的功能頁 Page,就這樣形成了。 ind ...
  • 23、$refs是什麼東東? 通過在標簽上設置ref屬性,然後在Vue實例方法中可以通過$refs拿到這些標簽,如: 24、對於多級嵌套組件,後代組件如何拿到父級或祖父級,設置更高級別的組件的數據或方法? 使用依賴註入。 provide選項允許我們在當前組件指定我們想要提供給後代組件的數據/方法,比 ...
  • 故障藝術,英文名稱叫glitch,在很多賽博朋克作品中經常看到,其實就是故意表現一種顯示設備的小故障效果,抖音的圖標其實就是這種的效果,我們看下這個圖標 這個圖標中的紅色和藍色的偏移其實就是一種故障藝術,看到這個,我就能想到早年我家還沒有有線電視時,搖天線對電視信號的場景,信號一差就是對著電視一陣拳 ...
  • 作為前端,在工作中難免會遇到關於排版的問題,以下是我整理的一些關於CSS的技巧,希望對你能有幫助。 1、每個單詞的首字母大寫 一般我們會用JS實現,其實CSS就可以實現。 JS代碼: var str = 'hello world'; str.replace(/( |^)[a z]/g,(L)= L. ...
  • 1.引入外部樣式表的格式: <link rel=”stylesheet” type=”text/css” href=”../css/style1.css”> 2.樣式表第一行應註明編碼類型: @charset “utf-8”; 3.css語法: ①一個元素中多個屬性用分號隔開,多個元素之間用逗號隔開 ...
  • 在前端裡面,大家都知道,html中輸入空格或換行是識別不了是空格的,但是有時候需要實現,那麼該如何解決呢?主要有以下幾個方面: 1:常用的轉義:&nbsp; 2:使用全形拼音,然後輸入空格也可實現 3:用標簽 pre實現(一般很少用了) 4:用css text-indent實現(這個一般用於時間段首 ...
  • 1. _proto_和prototype prototype屬性是一個靜態屬性, _proto_屬性是一個實例屬性。 prototype表示類的原型對象,_proto_表示原型對象中定義的內部屬性[prototype]的值。 類的每一個實例都有一個_proto_屬性,用於引用創建它的構造方法的pro ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...