一、Sass安裝(windows版):
1.Ruby 的官網(http://rubyinstaller.org/downloads)下載對應需要的 Ruby 版本
2.建議將其安裝在 C 盤下,在安裝過程中選擇第二個選項(不選中,就會出現編譯時找不到Ruby環境的情況)
3.Ruby 安裝完成后,在開始菜單中找到新安裝的 Ruby,并啟動 Ruby 的 Command 控制面板。
4.接下來就可以安裝 Sass 了。同樣的在windows下安裝 Sass 有多種方法。
方法1:打開電腦的命令終端,輸入下面的命令gem install sass
方法2:通過 Compass 來安裝 Sass
方法3:本地安裝 Sass
其他方法
5.命令終端輸入sass -v即可查看是否安裝成功
6.更新 Sass 命令終端輸入??gem update sass
二、卸載(刪除)Sass
1.gem uninstall sass??這樣就卸載了 Sass ,但這行命令基本上是使用不上。
三、sass的語法格式
Sass 語法是 Sass 的最初語法格式,他是通過 tab 鍵控制縮進的一種語法規則,而且這種縮進要求非常嚴格。另外其不帶有任何的分號和大括號。常常把這種格式稱為 Sass 老版本,其文件名以“.sass”為擴展名。
注:這種語法格式對于前端人員都不太容易接受,而且容易出錯。
so
SCSS 是 Sass 的新語法格式,從外形上來判斷他和 CSS 長得幾乎是一模一樣,代碼都包裹在一對大括號里,并且末尾結束處都有一個分號。其文件名格式常常以“.scss”為擴展名。
注意:不管是 Sass 的語法格式還是 SCSS 的語法格式,他們的功能都是一樣的,不同的是其書寫格式和文件擴展名不同。
一般都喜歡用新的語法規則,即SCSS,“.scss”使用的是 Sass 的新語法規則,也就是 SCSS 語法規則(類似 CSS 語法格式)。
四、編譯
注意:在項目中還是引用“.css”文件??另外新建sass文件夾裝.scss文件
1.命令編譯:
單文件編譯:
sass <要編譯的Sass文件路徑>/style.scss:<要輸出CSS文件路徑>/style.css
多文件編譯:
sass sass/:css/? ?表示將項目中“sass”文件夾中所有“.scss”(“.sass”)文件編譯成“.css”文件,并且將這些 CSS 文件都放在項目中“css”文件夾中。
缺點及解決方法:
在實際編譯過程中,你會發現上面的命令,只能一次性編譯。每次個性保存“.scss”文件之后,都得重新執行一次這樣的命令。如此操作太麻煩,其實還有一種方法,就是在編譯 Sass 時,開啟“watch”功能,這樣只要你的代碼進行任保修改,都能自動監測到代碼的變化,并且給你直接編譯出來:
sass --watch <要編譯的Sass文件路徑>/style.scss:<要輸出CSS文件路徑>/style.css
例如:sass --watch sass/bootstrap.scss:css/bootstrap.css
2、GUI 界面工具編譯 推薦
(1)Koala (http://koala-app.com/)? ?? ?(http://www.w3cplus.com/preprocessor/sass-gui-tool-koala.html)
(2)CodeKit(https://incident57.com/codekit/index.html)(http://www.w3cplus.com/preprocessor/sass-gui-tool-codekit.html)
3、自動化編譯
(1)Grunt 配置 Sass 編譯的示例代碼
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
sass: {
? ? ? ? ? ? ? ?dist: {
? ? ? ? ? ? ? ? ? ? ? ?files: {
? ? ? ? ? 'style/style.css' : 'sass/style.scss'
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? }
? ? ? ? ? ?},
? ? ? ? ? ? ? watch: {
? ? ? ? ? ? ? ? ? ? ? ? css: {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? files: '**/*.scss',
? ? ? ? ? ? ? ? ? ? ? ?tasks: ['sass']? ?? ?? ?? ?}
? ? ? ? ? ? ? ? ? ? ? ? }
});
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.registerTask('default',['watch']);
}
(2)Gulp 配置 Sass 編譯的示例代碼
var gulp = require('gulp');
var sass = require('gulp-sass');
? ? ? ? ? ? ? ? ? ? ?gulp.task('sass', function () {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?gulp.src('./scss/*.scss')
? ? ? ? ? ? ? ? ? ? . pipe(sass())
? ? ? ? ? ? ? ? ? ? ? .pipe(gulp.dest('./css'));
? ? ? ? ? ? ? ? ? ? });
? ? ? ? ? gulp.task('watch', function() {
? ? ? ? ? ? ? ? ? ? gulp.watch('scss/*.scss', ['sass']);
? ? ? ? ? ? ? });
gulp.task('default', ['sass','watch']);
五、常見的編譯錯誤
最為常見的一個錯誤就是字符編譯引起的。在Sass的編譯的過程中,是不是支持“GBK”編碼的。所以在創建 Sass 文件時,就需要將文件編碼設置為“utf-8”。
另外一個錯誤就是路徑中的中文字符引起的。建議在項目中文件命名或者文件目錄命名不要使用中文字符。而至于人為失誤造成的編譯失敗,在編譯過程中都會有具體的說明,大家可以根據編譯器提供的錯誤信息進行對應的修改。