溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Css、less和Sass(SCSS)搞不清楚?看完這篇文章你就懂了

發(fā)布時間:2020-05-02 00:55:47 來源:網(wǎng)絡(luò) 閱讀:227 作者:小學(xué)生學(xué)ui 欄目:開發(fā)技術(shù)

熟悉CSS的同學(xué)都知道,隨著時代發(fā)展CSS還延展出了一些新語言,比如SASS和LESS。但是可能很多同學(xué)并不了解他們,接下來我就會帶你一起了解一下關(guān)于Css、less和Sass的相關(guān)信息。

背景
CSS(層疊樣式表)是一門非程序式語言,入門學(xué)習(xí)使用非常直觀方便,但是對于一些比較復(fù)雜或者重用性比較強的項目來說,因為CSS沒有變量、函數(shù)、SCOPE(作用域),需要書寫大量看似沒有邏輯的代碼,不方便維護及擴展,不利于復(fù)用,尤其對于非前端開發(fā)工程師來講,往往會因為缺少 CSS 編寫經(jīng)驗而很難寫出組織良好且易于維護的 CSS 代碼。為了方便前端開發(fā)的工作量,出現(xiàn)了sass和less。
SASS和LESS
SASS(英文全稱:Syntactically Awesome Stylesheets)Sass 誕生于 2007 年,使用Ruby 編寫,是一種對css的一種擴展提升,增加了規(guī)則、變量、混入、選擇器、繼承等等特性??梢岳斫鉃橛胘s的方式去書寫,然后編譯成css。比如說,sass中可以把反復(fù)使用的css屬性值定義成變量,然后通過變量名來引用它們,而無需重復(fù)書寫這一屬性值。
LESS(2009年開源的一個項目,受Sass的影響較大,但又使用CSS的語法,讓大部分開發(fā)者和設(shè)計師更容易上手。LESS保留了css的任何功能,同時提供了多種方式能平滑的將寫好的代碼轉(zhuǎn)化成標準的CSS代碼,可以在任何使用隨時切換到css的語法進行書寫。
SASS和LESS****使用
傳統(tǒng)的css可以直接被html引用,但是sass和less由于使用了類似JavaScript的方式去書寫,所以必須要經(jīng)過編譯生成css,而html引用只能引用編譯之后的css文件,雖然過程多了一層,但是畢竟sass/less在書寫的時候就方便很多,所以在我們使用sass/less之前,只要我們提前設(shè)置好,就可以直接生成對應(yīng)的css文件,而我們只需要關(guān)心我們的sass/less文件即可。
Sass的語法規(guī)則,可以參考下SASS中文網(wǎng):<u>https://www.sass.hk/</u>。
SASS技術(shù)的文件的后綴名有兩種形式:.sass和.scss。其實兩者都是同一種東西,兩種均可以可以通過編譯生成瀏覽器能識別的css文件。這兩種的區(qū)別:
1.
擴展名不同;
2.

SCSS 的語法書寫和CSS 語法書寫方式非常類似,.sass文件對代碼的排版有著非常嚴格的要求,而且沒有大括號,沒有分號;

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;
}
編譯出來的 CSS
body {
font: 100% Helvetica, sans-serif;
color: #333;
}
LESS技術(shù)的后綴名只有一種,就是.less,語法規(guī)則和sass大同小異,詳細可以參考less中文網(wǎng)<u>http://lesscss.cn/</u>。
LESS使用分為兩種:
1.直接在瀏覽器中引入less編譯器js文件和less文件,直接渲染編譯為css文應(yīng)用到當前頁面中。
2.less文件通過編譯成為css之后引用css;
/ Less /
@color: #999;

@bgColor: skyblue;//不要添加引號

@width: 50%;

#wrap {
color: @color;
width: @width;
}
/ 生成后的 CSS /
#wrap {

color: #999;

width: 50%;
}

了解了這些概念問題,如果你想繼續(xù)深入研究的話,自然是需要大家繼續(xù)努力,關(guān)于CSS、LESS和SASS的內(nèi)容還有很多,還有更多的東西等待著大家挖掘,希望你不要停止自己的腳步,在前端開發(fā)的道路上越走越遠。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI