Top Banner
Friday, May 4, 12
56

SASS, Compass 1.1

Jan 28, 2015

Download

Technology

Serg Diniovskiy

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SASS, Compass 1.1

Friday, May 4, 12

Page 2: SASS, Compass 1.1

Sass, Compass

Friday, May 4, 12

Page 3: SASS, Compass 1.1

DIE – Duplication is evilFriday, May 4, 12

Page 4: SASS, Compass 1.1

.round {-webkit-transform: scale(1);-moz-transform: scale(1);-o-transform: scale(1);transform: scale(1);}

Friday, May 4, 12

Page 5: SASS, Compass 1.1

Sass

Friday, May 4, 12

Page 6: SASS, Compass 1.1

Windows http://rubyinstaller.org/downloads/$ gem install haml$ gem install haml/edge

Mac $ gem install haml$ gem install haml/edge

Linux $ sudo apt-get install ruby$ gem install haml$ gem install haml/edge

УстановкаFriday, May 4, 12

Page 7: SASS, Compass 1.1

$ sass --watch <folder>

Cледит за изменениями в sass-файлах и компилирует их в css

Как это работаетFriday, May 4, 12

Page 8: SASS, Compass 1.1

*.sass *.css

$ sass --watch <folder>

Cледит за изменениями в sass-файлах и компилирует их в css

Как это работаетFriday, May 4, 12

Page 9: SASS, Compass 1.1

*.sass *.css

$ sass --watch <folder>

Cледит за изменениями в sass-файлах и компилирует их в css

Как это работаетFriday, May 4, 12

Page 10: SASS, Compass 1.1

Синтаксис

Friday, May 4, 12

Page 11: SASS, Compass 1.1

SASS — Syntactically Awesome Stylesheets

table width: 100% tr td background: #edaeda p font-size: 14px

Friday, May 4, 12

Page 12: SASS, Compass 1.1

table{ width: 100%; tr{ td{ background: #edaeda; p{ font-size: 14px; } } }}

SCSS — Sassy CSSFriday, May 4, 12

Page 13: SASS, Compass 1.1

SASS — лаконичностьFriday, May 4, 12

Page 14: SASS, Compass 1.1

SCSS — обратная совместимостьFriday, May 4, 12

Page 15: SASS, Compass 1.1

Вложенность

Friday, May 4, 12

Page 16: SASS, Compass 1.1

.sidebar background: black h2

font-size: 20px a color: blue &:hover text-decoration: none

.sidebar { background: black;}.sidebar h2 { font-size: 20px}.sidebar a { color: blue;}.sidebar a:hover { text-decoration: none;}

ВложенностьFriday, May 4, 12

Page 17: SASS, Compass 1.1

h2 font:

style: italicweight: boldsize: 12pxfamily: sans-serif

h2{ font-style: italic; font-weight: bold; font-size: 12px; font-family: sans-serif;}

ВложенностьFriday, May 4, 12

Page 18: SASS, Compass 1.1

Переменные

Friday, May 4, 12

Page 19: SASS, Compass 1.1

$text-color: #edaeda$content-text: FUUUUUUUuuuuuu$headlines-font: Arial, Helvetica, sans-serif$true: false

ПеременныеFriday, May 4, 12

Page 20: SASS, Compass 1.1

$width: 500px$height: 400px

.center-absolute background: #f2c98a width: $width height: $height position: absolute left: 50% top: 50% margin-top: -($height/2) margin-left: -($width/2)

ПеременныеFriday, May 4, 12

Page 21: SASS, Compass 1.1

$varclass: cahoona

.big-#{$varclass} width: 2em

ПеременныеFriday, May 4, 12

Page 22: SASS, Compass 1.1

Примеси

Friday, May 4, 12

Page 23: SASS, Compass 1.1

h1{ font: 48px Georgia, serif;}p{ font: 14px Georgia, serif;}

@mixin font($size) font: $size Georgia, serif

h1 +font(48px)p +font(14px)

ПримесиFriday, May 4, 12

Page 24: SASS, Compass 1.1

Функции

Friday, May 4, 12

Page 25: SASS, Compass 1.1

$color: #f00

.somebox border: 1px solid $color box-shadow: 0 0 3px darken($color, 10%), inset 1px 0 lighten($color, 40%)

.somebox { border: 1px solid red; box-shadow: 0 0 3px #cc0000, inset 1px 0 #ffcccc;}

ФункцииFriday, May 4, 12

Page 26: SASS, Compass 1.1

.somebox background: rgba(#fff, 0.5)

.somebox { background: rgba(255, 255, 255, 0.5);}

ФункцииFriday, May 4, 12

Page 27: SASS, Compass 1.1

rgb($red, $green, $blue)rgba($red, $green, $blue, $alpha)rgba($color, $alpha)red($color)green($color)blue($color)mix($color-1, $color-2, [$weight])

hsl($hue, $saturation, $lightness)hsla($hue, $saturation, $lightness, $alpha)hue($color)saturation($color)lightness($color)adjust-hue($color, $degrees)

lighten($color, $amount)darken($color, $amount)saturate($color, $amount)desaturate($color, $amount)grayscale($color)complement($color)invert($color)

alpha($color) / opacity($color)rgba($color, $alpha)opacify($color, $amount) / fade-in($color, $amount)transparentize($color, $amount) / fade-out($color, $amount)

Еще функцииFriday, May 4, 12

Page 28: SASS, Compass 1.1

http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html

И еще функцииFriday, May 4, 12

Page 29: SASS, Compass 1.1

@extend

Friday, May 4, 12

Page 30: SASS, Compass 1.1

.food background-image: url(food-sprite.png)

.food-bacon @extend .food background-position: 0 -10px width: 25px height: 10px

.food-pizza @extend .food background-position: 0 -20px width: 45px height: 35px

@extendFriday, May 4, 12

Page 31: SASS, Compass 1.1

.food, .food-bacon, .food-pizza{ background-image: url(food-sprite.png);}

.food-bacon{ background-position: 0 -10px; width: 25px; height: 10px;}

.food-pizza{ background-position: 0 -20px; width: 45px; height: 35px;}

@extendFriday, May 4, 12

Page 32: SASS, Compass 1.1

@import

Friday, May 4, 12

Page 33: SASS, Compass 1.1

master.sass@import “main.sass”@import “index.sass”@import “profile.sass”

master.cssmain.css + index.css + profile.css

@importFriday, May 4, 12

Page 34: SASS, Compass 1.1

@if@for, @while@function@each

Кроме тогоFriday, May 4, 12

Page 35: SASS, Compass 1.1

http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html

ПочитатьFriday, May 4, 12

Page 36: SASS, Compass 1.1

Compass

Friday, May 4, 12

Page 37: SASS, Compass 1.1

Friday, May 4, 12

Page 38: SASS, Compass 1.1

.round+border-radius(25px)

CSS3Friday, May 4, 12

Page 39: SASS, Compass 1.1

.round+border-radius(25px)

.round {-webkit-border-radius: 25px;-moz-border-radius: 25px;-o-border-radius: 25px;-ms-border-radius: 25px;-khtml-border-radius: 25px;border-radius: 25px; }

CSS3Friday, May 4, 12

Page 40: SASS, Compass 1.1

.shadow {  -moz-box-shadow: 0 0 4px #cccccc;  -webkit-box-shadow: 0 0 4px #cccccc;  -o-box-shadow: 0 0 4px #cccccc;  box-shadow: 0 0 4px #cccccc;

}

.shadow  +box-shadow(0 0 4px #ccc)

CSS3Friday, May 4, 12

Page 41: SASS, Compass 1.1

.gradient  +background-image(linear-gradient(#fff, #ccc 30%, #bbb 70%, #aaa))

.gradient { background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff), color-stop(30%, #cccccc), color-stop(70%, #bbbbbb), color-stop(100%, #aaaaaa)); background-image: -webkit-linear-gradient(#ffffff, #cccccc 30%, #bbbbbb 70%, #aaaaaa); background-image: -moz-linear-gradient(#ffffff, #cccccc 30%, #bbbbbb 70%, #aaaaaa); background-image: -o-linear-gradient(#ffffff, #cccccc 30%, #bbbbbb 70%, #aaaaaa); background-image: -ms-linear-gradient(#ffffff, #cccccc 30%, #bbbbbb 70%, #aaaaaa); background-image: linear-gradient(#ffffff, #cccccc 30%, #bbbbbb 70%, #aaaaaa);

}

CSS3Friday, May 4, 12

Page 42: SASS, Compass 1.1

.beauty-box +border-radius(25px) +box-shadow(0 0 4px #ccc) +background-image(linear-gradient(#fff, #aaa))

CSS3Friday, May 4, 12

Page 43: SASS, Compass 1.1

.beauty-box { -webkit-border-radius: 25px; -moz-border-radius: 25px; -o-border-radius: 25px; -ms-border-radius: 25px; -khtml-border-radius: 25px; border-radius: 25px; -moz-box-shadow: 0 0 4px #cccccc; -webkit-box-shadow: 0 0 4px #cccccc; -o-box-shadow: 0 0 4px #cccccc; box-shadow: 0 0 4px #cccccc; background-image: -webkit-gradient(... color-stop(30%, #cccccc), color-stop(... background-image: -webkit-linear-gradient(... background-image: -moz-linear-gradient(... background-image: -o-linear-gradient(... background-image: -ms-linear-gradient(... background-image: linear-gradient(... }

CSS3Friday, May 4, 12

Page 44: SASS, Compass 1.1

Background Clip

Background Origin

Background Size

Box

Box Sizing

Columns

Clearfix

Font Face

Inline Block

Opacity

Transition

Transform

CSS3Friday, May 4, 12

Page 45: SASS, Compass 1.1

http://compass-style.org/reference/compass/css3/

CSS3Friday, May 4, 12

Page 46: SASS, Compass 1.1

$sprite: sprite-map("ico/*.png")

.fb background: sprite($sprite, fb).vk background: sprite($sprite, vk).twi background: sprite($sprite, twi)

ico/fb.png ico/twi.pngico/vk.png

СпрайтыFriday, May 4, 12

Page 47: SASS, Compass 1.1

$sprite: sprite-map("ico/*.png")

.fb background: sprite($sprite, fb).vk background: sprite($sprite, vk).twi background: sprite($sprite, twi)

ico/fb.png ico/twi.pngico/vk.png

СпрайтыFriday, May 4, 12

Page 48: SASS, Compass 1.1

$sprite: sprite-map("ico/*.png")

.fb background: sprite($sprite, fb).vk background: sprite($sprite, vk).twi background: sprite($sprite, twi)

ico/fb.png ico/twi.pngico/vk.png

СпрайтыFriday, May 4, 12

Page 49: SASS, Compass 1.1

$sprite: sprite-map("ico/*.png")

.fb background: sprite($sprite, fb).vk background: sprite($sprite, vk).twi background: sprite($sprite, twi)

ico/fb.png ico/twi.pngico/vk.png

СпрайтыFriday, May 4, 12

Page 50: SASS, Compass 1.1

ico-s2e5fe71d31.png

.fb { background: url('images/ico-s2e5fe71d31.png') 0 0px no-repeat;}.vk { background: url('images/ico-s2e5fe71d31.png') 0 -41px no-repeat;}.twi { background: url('images/ico-s2e5fe71d31.png') 0 -82px no-repeat;}

СпрайтыFriday, May 4, 12

Page 51: SASS, Compass 1.1

ico-s2e5fe71d31.png

.fb { background: url('images/ico-s2e5fe71d31.png') 0 0px no-repeat;}.vk { background: url('images/ico-s2e5fe71d31.png') 0 -41px no-repeat;}.twi { background: url('images/ico-s2e5fe71d31.png') 0 -82px no-repeat;}

СпрайтыFriday, May 4, 12

Page 52: SASS, Compass 1.1

ico-s2e5fe71d31.png

.fb { background: url('images/ico-s2e5fe71d31.png') 0 0px no-repeat;}.vk { background: url('images/ico-s2e5fe71d31.png') 0 -41px no-repeat;}.twi { background: url('images/ico-s2e5fe71d31.png') 0 -82px no-repeat;}

СпрайтыFriday, May 4, 12

Page 53: SASS, Compass 1.1

.baseboxbackground: inline-image("pic.png")

.basebox { background: url('data:image/png;base64,1UcAAA...AASUVORK5CYII='); }

Base64Friday, May 4, 12

Page 54: SASS, Compass 1.1

# You can select your preferred output style here (can be overridden via the command line):# output_style = :expanded or :nested or :compact or :compressed

output_style = :compressed

Config.rbFriday, May 4, 12

Page 56: SASS, Compass 1.1

[email protected]

www.evilmartians.ru

Дыниовский Сергей

СпасибоВопросы?

@llazio

Friday, May 4, 12