什麼是css預處理器?
定義:css
CSS 預處理器定義了一種新的語言,其基本思想是,用一種專門的編程語言,爲 CSS 增長了一些編程的特性,將 CSS 做爲目標生成文件,而後開發者就只要使用這種語言進行編碼工做。
通俗的說,編程
「CSS 預處理器用一種專門的編程語言,進行 Web 頁面樣式設計,而後再編譯成正常的 CSS 文件,以供項目使用。 CSS 預處理器爲 CSS 增長一些編程的特性,無需考慮瀏覽器的兼容性問題」,例如你能夠在 CSS 中使用變量、簡單的邏輯程序、函數(如右側代碼編輯器中就使用了變量$color)等等在編程語言中的一些基本特性,可讓你的 CSS 更加簡潔、適應性更強、可讀性更佳,更易於代碼的維護等諸多好處。
其它 CSS 預處理器語言:瀏覽器
Sass(SCSS)、LESS、Stylus、Turbine、Swithch CSS、CSS Cacheer、DT CSS (Sass(SCSS)、LESS、Stylus) 相對用的比較多,語言比較優秀
$color: red; .test { color: $color; } //編譯之後 .test{ color:red; }
什麼是Sass?sass
Sass 是一門高於 CSS 的元語言,它能用來清晰地、結構化地描述文件樣式,有着比普通 CSS 更增強大的功能。 Sass 可以提供更簡潔、更優雅的語法,同時提供多種功能來建立可維護和管理的樣式表。
Sass 前世此生:編程語言
Sass 是最先的 CSS 預處理語言,有比 LESS 更爲強大的功能,不過其一開始的縮進式語法(Sass 老版本語法)並不能被大衆接受,不過因爲其強大的功能和 Ruby on Rails 的大力推進,仍是有不少開發者選擇了 Sass。 Sass 是採用 Ruby 語言編寫的一款 CSS 預處理語言,它誕生於2007年,是最大的成熟的 CSS 預處理語言。最初它是爲了配合 HAML(一種縮進式 HTML 預編譯器)而設計的,所以有着和 HTML 同樣的縮進式風格。
爲何早期不如 LESS 普及?編輯器
雖然縮進式風格能夠有效縮減代碼量,強制規範編碼風格,但它一方面並不爲大多數程序接受,另外一方面沒法兼容已有的 CSS 代碼。這也是 Sass 雖然出現得最先,但遠不如 LESS 普及的緣由。
$side : left; .rounded { border-#{$side}-radius: 5px; }
Sass 和 SCSS 實際上是同一種東西,咱們平時都稱之爲 Sass,二者之間不一樣之處有如下兩點:ide
1.文件擴展名不一樣,Sass 是以「.sass」後綴爲擴展名,而 SCSS 是以「.scss」後綴爲擴展名 2.語法書寫方式不一樣,Sass 是以嚴格的縮進式語法規則來書寫,不帶大括號({})和分號(;),而 SCSS 的語法書寫和咱們的 CSS 語法書寫方式很是相似。
//sass語法 $font-stack: Helvetica, sans-serif //定義變量 $primary-color: #333 //定義變量 body font: 100% $font-stack color: $primary-color //scss語法 $font-stack: Helvetica, sans-serif; $primary-color: #333; body { font: 100% $font-stack; color: $primary-color; } //編譯後 body { font: 100% Helvetica, sans-serif; color: #333; }
SCSS 和 CSS 寫法無差異:函數
SCSS 和 CSS 寫法無差異,這也是 Sass 後來愈來愈受大衆喜歡緣由之一。 簡單點說,把你現有的「.css」文件直接修改爲「.scss」便可使用。