您現在的位置是:電腦技術吧?>? 編程技術 ??>??Java編程,g代碼編程詳解??>??正文詳情

Java編程,g代碼編程詳解

巫水荷2019-12-02 12:52:14 人圍觀
簡介宏程序編程一百例隨著CSS的發展,CSS具有語義命名約定和CSS層的分離,這將有助于CSS的可擴展性、性能改進和代碼管理。在我之前的文章中討論過的許多CSS問題可以通過使用適當編程初

隨著CSS的發展,使用CSS有語義化的命名約定和CSS層的分離,將有助于它的可擴展性,性能的提高和代碼的組織管理。

  在我前面的文章中討論很多關于CSS的問題都可以通過使用一個適當的CSS策略來避免。

在這篇文章里,我將著重于討論使用一種方法或者一個命名規則所帶來的好處。

  這里有很多可供使用的前端方法和命名規則,每個都有自己的優缺點。

在幾乎所有的案例中CSS被分割成更易于管理的代碼塊。

CSS的這種分割方式定義了每一種方法。

  命名規則  一個可靠命名規則的重要性是不可忽視的。

就像組織結構帶來的好處一樣,這里有很多性能上的優勢讓你能夠堅持地,有責任感地去命名你的選擇器。

  正確使用任何規則將會在大型項目減少與CSS相關的憂慮而發揮關鍵的作用  BEM  最流行的命名規則之一就是BEM(block:塊,Element:元素,Modifier:修飾符)。

通過給每個元素添加它的父級block模塊作為前綴,使得目標的安全性變得更加簡單了。

BEM還有助于消除頁面和body類對嵌套或者附加樣式依賴。

  CSS Code復制內容到剪貼板  .block {}  .block__element {}  .block--modifier {}  上面的例子展示了一個BEM項目的類結構,下劃線(__)被用來區分元素,而用連字符(--)是用來修飾元素的。

下面是一個現實世界的例子...  CSS Code復制內容到剪貼板  .product-details {}  .product-details__price {}  .product-details__price--sale {}  BEM中的一個圈套是引誘在修飾部分中添加多種用途的樣式類。

大的,小的,綠色的或者醒目的等修飾選擇器被提出引入到標記中,這在不久的將來將會發生改變。

  CSS Code復制內容到剪貼板  .product-details {}  .product-details__title {}  .product-details__title--small {}  像大多數的多用途類一樣,在項目一開始的時候意圖很明顯,但是當一個設計改變的時候常常會導致矛盾的CSS。

  SUIT  Suit起源于BEM,但是它對組件名使用駝峰式和連字號把組件從他們的修飾和子孫后代中區分出來。

  CSS Code復制內容到剪貼板  .u-utility {}  .ComponentName {}  .ComponentName--modifierName {}  .ComponentName-descendantName {}  .ComponentName.is-someState {}  通過消除潛在的混亂連字符號連接元素名來使得選擇器的可讀性更強。

  CSS Code復制內容到剪貼板  .ProductDetails {}  .ProductDetails-price {}  .ProductDetails-title--sale {}  加前綴  如果你不想使用如此嚴格或者復雜的命名規則,給每一個選擇器加前綴同樣可以達到這樣的效果。

  CSS Code復制內容到剪貼板  .s-product-details {}  .t-product-details {}  .js-product-details {}  這種方法使得它很容易的在表象類中辨別結構類但是只是簡單的寫和理解。

在上面的例子中的結構屬性將會被應用到s-product-details選擇器中。

主題屬性將應用于t-product-details選擇器。

  元素可以以同樣的方式定義或者使用基類和修飾類...  XML/HTML Code復制內容到剪貼板        從一方面說明在Sass partials中加前綴對于當在文件夾中刪除必要的存儲partials時對一個很大的項目文件定位是很有幫助的。

這種方法被使用于ITCSS中。

  你選擇什么都沒有問題,重要的是記住你的選擇,并將他們應用到整個項目中。

  方法  隨著命名規則的增加,CSS變得更安全,更高效了。

由于較小的CSS文件和更少的權重問題,所需要的嵌套選擇器將會減少。

  盡管有這些改進你仍可以像下面的這個例子使用復制的CSS來完成樣式。

  CSS Code復制內容到剪貼板  .product-details__title {  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;  text-transform: uppercase;  color: #333;  }  .latest-news__title {  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;  text-transform: uppercase;  color: #FF0000;  }  這就是前端的方法的由來,將你的CSS劃分層次會有助于防止重復的樣式和大分組的選擇器。

共同或者基礎的樣式被分開定義,而更具體或者修飾的樣式被添加到繼承樣式的頂部。

  OOCSS  面向對象CSS有兩個主要的原則第一是表現與結構分離,第二是容器與內容分離。

這兩個原則的設計是用來通過創建可復用的CSS模塊以提高性能。

  表現與結構分離:  CSS Code復制內容到剪貼板      .product-image {  width: 400px;  overflow: hidden;  }  .product-description {  width: 500px;  min-height: 200px;  overflow: auto;  }  .box-padded {  background: #FFF;  padding: 10px;  }  ```  內容與容器分離:  CSS Code復制內容到剪貼板      .wrapper {  width: 400px;  margin: 0 auto;  overflow: hidden;  }  .recently-viewed {  border: solid 1px #ccc;  background: #FFF;  color: £666;  }  .suggested-products {  border: solid 1px #ccc;  background: #FFF;  color: £666;  }  這種面向對象的工作方式創建了一系列可以用來設置CSS屬性的多種用途類。

這種工作方式可以提高站點性能和維護以及保持CSS文件的DRY原則。

  即使標記的多個主題是一致的,一個面向對象方法可以添加矯正的CSS用來覆蓋或刪除不想要的繼承樣式。

  CSS Code復制內容到剪貼板  product-delivry.padded-box {  padding:0  }  SMACSS  SMACSS像OOCSS一樣以減少重復樣式為基礎。

然而SMACSS使用一套五個層次來劃分CSS給項目帶來更結構化的方法。

  Base - HTML elements defaults  Layout -Page structure  Module - Re-usable code bloks  State - Active/Inactive etc  Theme - Typography and colour schemes etc  這個增加的組織和結構提高了輸出的CSS的效率。

這個方法同樣適用于需要添加或者刪除層次的地方。

  ITCSS  ITCSS是一個完全不同于SMACSS的全新的方法,它創造了一系列的層次來管理依賴關系和促進可擴展性。

基礎的層次包括通用和廣泛的選擇器。

頂部的層次包含了局部模塊具體化的選擇器。

整套的層次如下...  Tools??Default mixins functions  Generic??Normalize, resets, box-sizing  Base??HTML elements  Objects??Design patterns  Components??Modules blocks of code  Trumps??Helpers overrides  每個層次增加的權重,只允許添加額外的要求。

  以上面同樣的例子,CSS將會被劃分為基礎層和組件層。

  CSS Code復制內容到剪貼板  p {  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;  font-size: 14px;  }  .product-details__title {  color: #333;  }  .latest-news__title {  color: #FF0000;  }  使用前請注意  你僅僅是可以決定使用上述策略之一,但是你不是全部都得靠它。

如果某一層次并不適合你的項目那么就不要使用它了。

你也可以改變或者增加一些東西來使得它適應你的項目和團隊的需求。

命名規則或者方法并不是每個時候都能100%的適合所有項目。

  你也可以創建你自己的方法或者命名規則,允許一個量身定制的解決方案來完美的適應你項目的需求。

定制解決方案的一個不足之處就是缺乏社區的支持和文檔。

版權聲明:本文由 巫水荷 整理編輯。

原標題:c編程,shell編程

轉載注明出處:http://www.dn9ww09s.icu/program/14989.html

文章評論

    共有條評論來說兩句吧...

    用戶名:

    驗證碼:

作者推薦

  • 百分比是單位嗎,百分比怎么算

    百分比是單位嗎,百分比怎么算 相關圖片計算百分比視區單位視區單位是相對單位,這意味著它們沒有客觀尺寸。它們的大小由視區的大小決定。這里有四個與視區相關的單位。我會把重點放在前兩個單元上,因為它們更有可...

  • 私有倉庫搭建,私有helm倉庫搭建

    私有倉庫搭建,私有helm倉庫搭建 相關圖片maven私有倉庫一。Docker registry描述了本文中記錄的設置Docker注冊表的完整操作過程。雖然官方提供dockerhub作為一個開放的集中倉庫,但可以想象,中國nexus 搭建 私有倉庫...

  • text—decoration,decorative text

    text—decoration,decorative text 相關圖片text怎么用定義并使用文本裝飾屬性指定添加到文本的裝飾。注意:飾面的顏色由“顏色”屬性設置。說明此屬性允許您對文本設置一些效果,例如下劃線。如果子元素沒有自己的裝飾,...

  • fontsize屬性,font和fontsize

    fontsize屬性,font和fontsize 相關圖片css font size基本語法結構:字體大小 字體大小值 單位字:字體大小語法:字體大小:絕對大小|相對大小|長度值:x x small | x smallfontsize單位html5...

  • scale的用法,range和scale用法區別

    scale的用法,range和scale用法區別 相關圖片scale的音標縮放屬性語法:Zoom:normal | |;默認值:normal應用于:所有元素的繼承:with value:normal:使用對象的實際大小。:使用浮點數定grant的用法...

  • magisk模塊編寫,python模塊有哪些

    magisk模塊編寫,python模塊有哪些 相關圖片python模塊大全印刷媒體(如雜志或報紙)在網站上的最大優勢是頁面和段落布局的靈活性。例如,打印媒體能夠優雅地填充多個列,甚至如下面的屏幕截圖所示的那樣復雜。然而,由于...

  • border radius屬性,border-radius

    border radius屬性,border-radius 相關圖片textdecoration屬性邊界半徑是一種縮寫方法。如果前/后和/或后存在值,則設置/設置其水平半徑,并設置/設置其垂直半徑后的值。如果沒有/,則水平和垂直半徑相等。CSS代碼將內容復制到...

  • 屬性的使用無效,如何使用被隱藏的屬性

    屬性的使用無效,如何使用被隱藏的屬性 相關圖片三代五屬性頁面上顯示的每個元素(包括內聯元素)都可以視為一個框模型。查看chrome devtools中的屏幕截圖:可以看到box模型由四個部分組成。從內到外:內容填充全能屬性如何使用...

  • animation屬性,animation的屬性及其意思

    animation屬性,animation的屬性及其意思 相關圖片animation元素一、animation的語法   1、@keyframes插入關鍵幀  (1)FormTo形式:  CSS Code復制內容到剪貼板  @keyframes danimation教程...

  • gradient,gradient elution

    gradient,gradient elution 相關圖片求gradientCSS3梯度分為線性梯度和徑向梯度。線性梯度在WebKit中的應用CSS代碼復制內容到剪貼板WebKit線性梯度(gradient怎么求...

熱評文章

  • 響應式的,什么是響應式

    響應式的,什么是響應式 相關圖片網頁響應式在整個網站的發展過程中,圖片的管理難度很大。請注意,圖片應在各種設備上平滑顯示。他們會遇到的問題是:適當優化和縮小圖片尺寸,注意不要浪費帶寬(網站加載速...

  • qt安裝教程及配置,plsql安裝教程及配置

    qt安裝教程及配置,plsql安裝教程及配置 相關圖片tomcat9的安裝與配置Cobbler是一種快速網絡安裝的Linux服務,經過調整還可以支持windows的網絡安裝。這個工具是用Python開發的,它小巧輕便(只有15K行Pythotomcat的安裝與配置...

  • 全方位了解,全方位

    全方位了解,全方位 相關圖片如何全方位了解公司這是一個adobe建議:CSS區域,它提供了一種在多個不同元素中排列內容的方法。首先,需要為內容容器的flow屬性聲明一個唯一的字符值,然后使用from()函數全方面...

  • 三角箭頭,三角箭頭圖標

    三角箭頭,三角箭頭圖標 相關圖片三箭頭使用CSS制作不帶圖片和箭頭的div box(此代碼更適合追求純代碼的人)這種效果也可以用圖片背景實現,代碼將更加簡潔CSS代碼:CSS代碼將內容復制到剪貼板d箭頭...

  • 案例精選,成功策劃案例精選

    案例精選,成功策劃案例精選 相關圖片商業策劃案例精選這項審查于7月初完成。一方面,我的“廣告愛看!“騰訊十大最佳HTML5廣告”出人意料地在業內大受歡迎。另一方面,有傳聞稱,公眾評論HTML5的代理公司不再制作H保...

  • 中外廣告差別,什么是好廣告

    中外廣告差別,什么是好廣告 相關圖片哪個國家的廣告好在網絡傳播領域,我一直在探索與用戶更好的溝通和信息傳遞!在解釋H5廣告與傳統廣告的區別時,筆者試圖用一幅圖片來概括一種內容,讓看護者更簡單地理解其內涵...

  • 小王子粘土,輕粘土小王子教程

    小王子粘土,輕粘土小王子教程 相關圖片超輕粘土小王子教程視頻你好,我是Erwa,騰訊tgidas的動畫師。我很榮幸能參加與小王子電影聯合推出的游戲版《小王子的愛情消除》的H5世界觀推廣活動。同時,我們還制作了另一個版...

  • 什么是數據庫索引,數據庫索引怎么用

    什么是數據庫索引,數據庫索引怎么用 相關圖片SQL數據庫介紹了indexeddb是一個HTML5 web數據庫,它允許html5web應用程序在用戶瀏覽器中存儲數據。Indexeddb非常強大,對應用程序非常有用。它數據庫...

  • 吳亦凡,吳亦凡個人資料

    吳亦凡,吳亦凡個人資料 相關圖片吳亦凡在追娜扎創意總是一個命題作文。在項目的早期階段,團隊了解到:1。吳一凡簽署的全國攻勢將是一場立體完整的戰役,品牌團隊希望tgidas能通過在H5模塊中的精彩創意引爆話題...

  • 七夕秀恩愛,七夕怎么樣秀恩愛

    七夕秀恩愛,七夕怎么樣秀恩愛 相關圖片情人節秀恩愛的說說七夕節的愛情也取決于時間。不能早也不能晚。因為愛的表露遲早會有報應的,所以我們選擇了周五中午,這也可以讓牛郎和織女的鵲橋更加堅固耐用。接下來,讓...

關注微信

变脸官网查询