多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > htmlcss > 使用 sass/scss 編寫CSS 快速上手

使用 sass/scss 編寫CSS 快速上手

來源:程序員人生   發布時間:2015-04-23 08:39:07 閱讀次數:4535次


文章作者:松陽

本文出自 阿修羅道,制止用于商業用處,轉載請注明出處。  

原文鏈接:http://blog.csdn.net/fansongy/article/details/44964187







Why Scss

CSS不是1種編程語言,它只是個配置文件,并沒有生命。但我等大程序 怎樣能容忍自己寫出來的東西不能動態變化,不能封裝繼承,不能xxoo呢,因而就有了css預處理的概念。即,寫是1套,用是1套。Scss是css預處理的1個選擇,它依托于Ruby,算是逼格比較高的。類似的還有Less等,語言優劣之爭意義不大,用好1個其他也是大同小異。

安裝

Mac上自帶Ruby,直接運行:

gem install sass

安裝對應模塊,然后可使用:

sass --watch style.scss:style.css

命令來監視style.scss,當它有更改時,會自動編譯成style.css。

友誼提示: 我運行gem時完全不動,還以為是掉網了。后來聽說是我大GFW威武,可以將源更改成x寶的服務器來解決:

$ gem sources -l $ gem sources --remove https://rubygems.org/   $ gem sources -a http://ruby.taobao.org/ $ gem sources -l //然后我順手更新了1下Ruby的版本 $ sudo gem update --system 

經過上面的折騰,順利安裝sass

經常使用語法

變量

//定義 $magin : 30px; //px $blue : #1875e7; //color $side : left; //str Usage: boder-#{$side}-radius

所有的數字類型的變量都可以進行相應的計算。

嵌套

nav { ul {...} border : { //注意冒號 相當于樹形屬性 會編譯成 border-color:red color : red; } a { &:hover { color :$blue;} //&表示援用上層 會編譯成 a:hover{...} } }

注釋

標準的CSS注釋 /* comment */ ,會保存到編譯后的文件。

單行注釋 // comment,只保存在SASS源文件中,編譯后被省略。

在/*后面加1個感嘆號,表示這是"重要注釋"。即便是緊縮模式編譯,也會保存這行注釋,通常可以用于聲明版權信息。

繼承

使用@extend可以繼承相應的css:

.class1 { border:1px solid #ddd; } .class2 { @extend .class1; border-color: green; }

寫的時候要注意順序,編譯時,css是不會調順序的,誰先誰后得想好了。

Mixin

這個是1個函數與宏的私生子。實現像函數,使用像宏。關鍵詞為@mixin和@include

@mixin left($color, $value:10px) { color:$color; margin-left:$value; } .mydiv { @include left($blue,15px); }

色彩處理函數

lighten(#cc3, 10%) // #d6d65c darken(#cc3, 10%) // #a3a329 grayscale(#cc3) // #808080 complement(#cc3) // #33c $linkColor: #08c; a { text-decoration:none; color:$linkColor; &:hover{ color:darken($linkColor,10%); } }

用這個方法就可以制作1個鏈接變灰的效果

引入文件

@import "style2.css";

邏輯編譯

想要真實的動起來,就得有判斷啦,循環啦常規流程函數。

@if可1個條件單獨使用,也能夠和@else結合多條件使用

$type: monster; p { @if $type == ocean { color: blue; } @else if $type == matador { color: red; } @else if $type == monster { color: green; } @else { color: black; } }

for循環有兩種情勢,分別為:@for $var from <start> through <end>@for $var from <start> to <end>。$i表示變量,start表示起始值,end表示結束值,這兩個的區分是關鍵字through表示包括end這個數,而to則不包括end這個數。

@for $i from 1 through 3 { .item-#{$i} { width: 2em * $i; } }

each語法為:@each $var in <list or map>。其中$var表示變量,而list和map表示list類型數據和map類型數據。

$animal-list: puma, sea-slug, egret, salamander; @each $animal in $animal-list { .#{$animal}-icon { background-image: url('/images/#{$animal}.png'); } } $headings: (h1: 2em, h2: 1.5em, h3: 1.2em); @each $header, $size in $headings { #{$header} { font-size: $size; } }

sublime 分頁

其實這個也不能算是Scss的知識了,只不過是用到它更方便1些。Sublime可以左右分屏,我們可以將源文件放在左邊的窗口中編譯后的放在右邊,方便我們做檢查。Mac上的快捷鍵比較變態:

cmd+option+ctrl+2

左右移動使用

cmd+shift+[

如果你覺得這篇文章對你有幫助,可以順手點個,不但不會喜當爹,還能讓更多人能看到它... 

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产成人欧美一区二区三区的 | 精品国产毛片 | 国模一区二区三区视频一 | 欧美真人视频一级毛片 | 伊人久久综合网亚洲 | 免费在线视频播放 | 亚洲一区二区三区四区 | 成人久久久观看免费毛片 | 久久久久欧美精品网站 | 国产精品不卡片视频免费观看 | jizz日本在线观看 | 91精品一区二区三区在线播放 | 亚洲福利一区福利三区 | 欧美成免费 | 免费ab| 国产亚洲精品自在久久不卡 | 国产亚洲一欧美一区二区三区 | 在线 | 一区二区三区四区 | www.91亚洲 | 精品无码久久久久久久动漫 | 男女免费观看在线爽爽爽视频 | 久久久久久日本一区99 | 日本亚洲高清 | 国产清纯91天堂在线观看 | 成人国产一区 | 久久综合精品不卡一区二区 | 久久国产精品一国产精品 | 女bbbbxxxx另类亚洲 | 欧美同性video| 另类小说图片 | 中文字幕乱码无限2021丫丫 | 国产真人毛片一级视频 | 私啪影院 | 亚洲网站免费 | 国产亚洲精品一区久久 | 国产亚洲人成a在线v网站 | www爽| 一区二区三区四区精品 | 成人亚洲网站 | 日本jizz在线播放 | 国内精品视频九九九九 |