scss語法介紹


這里既然是對語法的介紹,那么至於如何安裝和編譯scss我就不多少了,主要是因為本人在群里認識的小伙伴有的不會用scss,所以就借着放假的機會來對scss語法做個總結,博主在開發過程中用scss蠻多,所以對scss語法還是熟知的。

1.自定義變量

$color:pink;
.test1{
	background-color:$color;
}

通過編譯工具編譯出來后

.test1{
	background-color:pink;
}

注:時間原因我在這里只寫scss了,就不寫編譯后的結果,一來方便大家自己去嘗試編譯,二來增加大家對scss的理解:編譯工具kaola很好的一個編譯工具,大家可以百度如何使用,再這里就不做過多介紹了。


2.插入一個變量

$right:right;
.test2{
	border-#{$right}:1px solid #000;
}

3.子元素書寫

.text3{
	.text33{
		border:1px solid;
	}	
}

4.樣式的加減乘除

$paramer:3;
.text4{
	height:(1px+3px);
	width: (96px/6);
	right: $paramer*4;
}

5.繼承

.class5{
	border:1px solid red;
}
.class5E{
	@extend .class5;
	font-size:20px;
}

6.代碼塊的復用

@mixin text6 {
	height:50px;
	left:20px;
}
.text6M{
	@include text6
}
//這里的mixin就是定義一個可以復用的代碼段,當然我們也可以給它傳遞一個參數,就像這樣一樣:
@mixin text66($height){
	height:$heigth;
	left:20px;
}
.text6N{
	@include text66(100px);
}	

7.if語法,通過對if的判斷來決定使用那一套樣式

.text7{
	@if 1 +2 == 3 {
		border:1px solid ;
	}
	@if 5 < 3 {
		border:2px dsahed red;
	}
}
當然,我們都知道if一般是要和else配合的,所以我們也可以這樣寫
.test77{
	@if lightness($color) > 30%{
		background-color:#fff;
	}@else{
		background:#0ff;
	}
}
這里的lightness是一個scss顏色函數,$color指向之前定義的值。

8.循環語法,包括最常見的三種循環方法,for,while,each

//for 循環
@for $i from 1 to 5 {
	.item-#{$i} {
		border:#{$i}px solid;
	}
}
//while 循環
$m:8;
@while $m > 0 {
	.items-#{$m} {
		width:2em*$m;
	}
	$m:$m - 2 ;
}
//這里可以對$m進行運算 讓它每次都減去2
//each 語法
@each $img in q,w,e,r {
	.#{$img} {
		background-image:url('#{$img}.png')
	}
}

9.函數語法

@function double ($number){
	@return $number*2;
}
.text9{
	font-size:double(20px);
}

10.import導入語法

@import 'other.scss'
這樣就在你現在的scss中導入了other.scss編寫的scss

scss語法並不是很多,但是需要開發者靈活使用,這樣才能事半功倍,要深刻理解scss變量,以及如何插入變量,以及循環語法和函數思想,如果遇到不太清楚的可以給博主留言哈,歡迎指正和提出問題。

紙上得來終覺淺 絕知此事要躬行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM