Slide 1

Slide 1 text

Building on CSS Tuesday, May 15, 12

Slide 2

Slide 2 text

www.sayan.ee code . explorer . speaker Tuesday, May 15, 12

Slide 3

Slide 3 text

code is poetry Tuesday, May 15, 12

Slide 4

Slide 4 text

code is poetry fast flexible fun Tuesday, May 15, 12

Slide 5

Slide 5 text

.css .sass .scss meta languages Tuesday, May 15, 12

Slide 6

Slide 6 text

.css .sass .scss meta languages .border { padding: 8px; margin: 8px; } .border padding: $margin/2 margin: $margin/2 .border{ padding: $margin/ 2; margin: $margin/2; } Tuesday, May 15, 12

Slide 7

Slide 7 text

install ruby pre-installed ruby installer pre-installed rubygems download Tuesday, May 15, 12

Slide 8

Slide 8 text

install ruby pre-installed ruby installer pre-installed rubygems download gem install sass Tuesday, May 15, 12

Slide 9

Slide 9 text

Tuesday, May 15, 12

Slide 10

Slide 10 text

$ cd stylesheet-folder-or-path $ mv style.css style.scss $ sass --watch style.scss:style.css Tuesday, May 15, 12

Slide 11

Slide 11 text

code is poetry fast flexible fun Tuesday, May 15, 12

Slide 12

Slide 12 text

:before 133 lines of code 25 lines of repeated code no code indentation Tuesday, May 15, 12

Slide 13

Slide 13 text

fast nesting parenting operations Tuesday, May 15, 12

Slide 14

Slide 14 text

nesting header{ width:100%; clear:both; margin: 10px auto; background-color: #ABDAD4; } header h1{ text-align: center; line-height:100px; color:#007674; } header{ width:100%; clear:both; margin: 10px auto; background-color: #ABDAD4; h1{ text-align: center; line-height:100px; color:#007674; } } .css .scss Tuesday, May 15, 12

Slide 15

Slide 15 text

parenting for pseudo-classes li{ float:left; margin:30px; } li:nth-child(odd) { -webkit-transform: scale(0.7); -moz-transform: scale(0.7); } li{ float:left; margin:30px; &:nth-child(odd) { -webkit-transform: scale(0.7); -moz-transform: scale(0.7); } } .css .scss Tuesday, May 15, 12

Slide 16

Slide 16 text

operations: + - / * % .main{ width:100%; } .sidebar{ width:30%; } $length:100%; .main{ width: $length; } .sidebar{ width:$length*0.3; } .css .scss Tuesday, May 15, 12

Slide 17

Slide 17 text

flexible variables mixin import Tuesday, May 15, 12

Slide 18

Slide 18 text

variables .main{ background-color: #ABDAD4; } .main h1{ color: #007674; } .sidebar{ background-color: #ABDAD4; } .sidebar h2{ color: #007674; } $darkcolor:#007674; $lightcolor:#ABDAD4; .main{ background-color: $lightcolor; h1{ color: $darkcolor; } } .sidebar{ background-color: $lightcolor; h2{ color: $darkcolor; } } .css .scss Tuesday, May 15, 12

Slide 19

Slide 19 text

mixin header{ -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; } @mixin rounded($radius){ -webkit-border-radius: $radius; -moz-border-radius: $radius; border-radius: $radius; } header{ @include rounded(10px); } .css .scss Tuesday, May 15, 12

Slide 20

Slide 20 text

import #navbar li { border-top-radius: 10px; -moz-border-radius-top: 10px; -webkit-border-top-radius: 10px; } #footer { border-top-radius: 5px; -moz-border-radius-top: 5px; -webkit-border-top-radius: 5px; } #sidebar { border-left-radius: 8px; -moz-border-radius-left: 8px; -webkit-border-left-radius: 8px; } /* _rounded.scss */ @mixin rounded($side, $radius: 10px) { border-#{$side}-radius: $radius; -moz-border-radius-#{$side}: $radius; -webkit-border-#{$side}-radius: $radius; } .css .scss /* style.scss */ @import "rounded"; #navbar li { @include rounded(top); } #footer { @include rounded(top, 5px); } #sidebar { @include rounded(left, 8px); } Tuesday, May 15, 12

Slide 21

Slide 21 text

fun checking extensions compatibility Tuesday, May 15, 12

Slide 22

Slide 22 text

creating error messages change detection checking Tuesday, May 15, 12

Slide 23

Slide 23 text

creating error messages change detection checking Tuesday, May 15, 12

Slide 24

Slide 24 text

extensions Tuesday, May 15, 12

Slide 25

Slide 25 text

compatibility .scss .css every valid CSS3 stylesheet is valid SCSS Tuesday, May 15, 12

Slide 26

Slide 26 text

compatibility .scss .css pass on just the created .css file to any developer Tuesday, May 15, 12

Slide 27

Slide 27 text

:before 133 lines of code 25 lines of repeated code no code indentation :after 110 lines of code 0 lines of repeated code .css automatic code indentation .css file for future development _partial.scss for future code reuse faster code changes with dynamism .scss compatible with .css codes Tuesday, May 15, 12

Slide 28

Slide 28 text

Resources - Install 1. gem install sass 2. windows ruby installer 3. install rubygems Resources - Sass 1. sass website 2. online editor 3. tutorial 4. documentation 5. compass with sass 6. the sass way - latest buzz 7. python compiler for scss 1. less css framework 2. scss vs. less wrangl 3. sass/less comparison 4. wrangl sass vs less Resources - Less css Tuesday, May 15, 12

Slide 29

Slide 29 text

Q? Tuesday, May 15, 12

Slide 30

Slide 30 text

@sayanee_ slides + codes Tuesday, May 15, 12