sass, compass 1.1

56
Friday, May 4, 12

Upload: serg-diniovskiy

Post on 28-Jan-2015

125 views

Category:

Technology


1 download

DESCRIPTION

 

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