SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
Erste Schritte
                    Features
             Fazit und Links




Syntactically Awesome Stylesheets mit
                 Sass

                Martin Grandrath

                 InsertEFFECT GmbH


    Webmontag Erlangen, 11. Oktober 2010




                 Grandrath     Sass
Erste Schritte
                                             Installation
                                  Features
                                             Ein Stylesheet mit Sass
                           Fazit und Links

Installation




        Ruby
        Rubygems
        gem install haml




                               Grandrath     Sass
Erste Schritte
                                         Installation
                              Features
                                         Ein Stylesheet mit Sass
                       Fazit und Links

Jedes Stylesheet ist eine Sass-Datei


   input.scss
   #navbar {
     width: 80%;
     height: 23px;
   }


   $ sass input.scss:output.css
   output.css
   #navbar {
     width: 80%;
     height: 23px; }




                           Grandrath     Sass
Erste Schritte
                                         Installation
                              Features
                                         Ein Stylesheet mit Sass
                       Fazit und Links

Jedes Stylesheet ist eine Sass-Datei


   input.scss
   #navbar {
     width: 80%;
     height: 23px;
   }


   $ sass input.scss:output.css
   output.css
   #navbar {
     width: 80%;
     height: 23px; }




                           Grandrath     Sass
Erste Schritte
                                         Installation
                              Features
                                         Ein Stylesheet mit Sass
                       Fazit und Links

Jedes Stylesheet ist eine Sass-Datei


   input.scss
   #navbar {
     width: 80%;
     height: 23px;
   }


   $ sass input.scss:output.css
   output.css
   #navbar {
     width: 80%;
     height: 23px; }




                           Grandrath     Sass
Erste Schritte
                                        Installation
                             Features
                                        Ein Stylesheet mit Sass
                      Fazit und Links

Nützliche Parameter




   sass -watch input.scss:output.css Aktualisiert
            output.css automatisch wenn sich input.scss
            ändert
   sass -style compressed input.scss:output.css
            Erstellt eine minimierte Version ohne Whitespace
            und Kommentare




                          Grandrath     Sass
Erste Schritte
                                  Features
                           Fazit und Links

Kommentare




  input.scss                                  output.css

  /* A CSS comment */                         /* A CSS comment */
  body { color: black; }                      body {
                                                color: black; }
  // A Sass comment
  a { color: green; }                         a {
                                                color: green; }




                               Grandrath     Sass
Erste Schritte
                                  Features
                           Fazit und Links

Kommentare




  input.scss                                  output.css

  /* A CSS comment */                         /* A CSS comment */
  body { color: black; }                      body {
                                                color: black; }
  // A Sass comment
  a { color: green; }                         a {
                                                color: green; }




                               Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Variablen




  input.scss                                 output.css

  $link-color: #ce4dd6;                      a {
                                               color: #ce4dd6; }
  a {
    color: $link-color;
  }




                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Variablen




  input.scss                                 output.css

  $link-color: #ce4dd6;                      a {
                                               color: #ce4dd6; }
  a {
    color: $link-color;
  }




                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Nesting




  input.scss                                 output.css

  #navbar {                                  #navbar {
    width: 80%;                                width: 80%;
    height: 23px;                              height: 23px; }
                                               #navbar ul {
      ul {                                       list-style-type: none; }
        list-style-type: none;                 #navbar li {
      }                                          float: left; }
      li {                                       #navbar li a {
        float: left;                               font-weight: bold; }
        a { font-weight: bold; }
      }
  }




                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Nesting




  input.scss                                 output.css

  #navbar {                                  #navbar {
    width: 80%;                                width: 80%;
    height: 23px;                              height: 23px; }
                                               #navbar ul {
      ul {                                       list-style-type: none; }
        list-style-type: none;                 #navbar li {
      }                                          float: left; }
      li {                                       #navbar li a {
        float: left;                               font-weight: bold; }
        a { font-weight: bold; }
      }
  }




                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Arithmetik




  input.scss                                 output.css

  #navbar {                                  #navbar {
    $width: 800px;                             width: 800px; }
    $items: 5;                                 #navbar li {
                                                 float: left;
      width: $width;                             width: 160px; }

      li {
        float: left;
        width: $width/$items;
      }
  }




                                Grandrath   Sass
Erste Schritte
                                 Features
                          Fazit und Links

Arithmetik




  input.scss                                 output.css

  #navbar {                                  #navbar {
    $width: 800px;                             width: 800px; }
    $items: 5;                                 #navbar li {
                                                 float: left;
      width: $width;                             width: 160px; }

      li {
        float: left;
        width: $width/$items;
      }
  }




                                Grandrath   Sass
Erste Schritte
                               Features
                        Fazit und Links

Arithmetik mit Farben




  input.scss                               output.css

  p {                                      p {
    color: #010203 + #040506;                color: #050709; }
  }
                                           a {
  $links: #4e2e9e;                           color: #4e2e9e; }

  a {                                      a:hover {
    color: $links; }                         color: #9175d7; }

  a:hover {
    color: lighten($links, 25%);
  }




                            Grandrath     Sass
Erste Schritte
                               Features
                        Fazit und Links

Arithmetik mit Farben




  input.scss                               output.css

  p {                                      p {
    color: #010203 + #040506;                color: #050709; }
  }
                                           a {
  $links: #4e2e9e;                           color: #4e2e9e; }

  a {                                      a:hover {
    color: $links; }                         color: #9175d7; }

  a:hover {
    color: lighten($links, 25%);
  }




                            Grandrath     Sass
Erste Schritte
                               Features
                        Fazit und Links

Referenz auf Elternelement




  input.scss                               output.css

  #main {                                  #main {
    color: black;                            color: black; }
    a {                                      #main a {
      font-weight: bold;                       font-weight: bold; }
      &:hover { color: red; }                  #main a:hover {
    }                                            color: red; }
  }




                            Grandrath     Sass
Erste Schritte
                               Features
                        Fazit und Links

Referenz auf Elternelement




  input.scss                               output.css

  #main {                                  #main {
    color: black;                            color: black; }
    a {                                      #main a {
      font-weight: bold;                       font-weight: bold; }
      &:hover { color: red; }                  #main a:hover {
    }                                            color: red; }
  }




                            Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Mixins



  input.scss                                 output.css

  @mixin rounded {                           #navbar li {
    $r: 10px;                                  -moz-border-radius: 10px;
                                               -webkit-border-radius: 10px;
      -moz-border-radius: $r;                  border-radius: 10px; }
      -webkit-border-radius: $r;
      border-radius: $r;                     #footer {
  }                                            -moz-border-radius: 10px;
                                               -webkit-border-radius: 10px;
  #navbar li {                                 border-radius: 10px; }
    @include rounded;
  }
  #footer {
    @include rounded;
  }



                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

Mixins



  input.scss                                 output.css

  @mixin rounded {                           #navbar li {
    $r: 10px;                                  -moz-border-radius: 10px;
                                               -webkit-border-radius: 10px;
      -moz-border-radius: $r;                  border-radius: 10px; }
      -webkit-border-radius: $r;
      border-radius: $r;                     #footer {
  }                                            -moz-border-radius: 10px;
                                               -webkit-border-radius: 10px;
  #navbar li {                                 border-radius: 10px; }
    @include rounded;
  }
  #footer {
    @include rounded;
  }



                              Grandrath     Sass
Erste Schritte
                               Features
                        Fazit und Links

Mixins mit Parametern




  input.scss                               output.css

  @mixin rounded($r: 10px) {               #navbar li {
    -moz-border-radius: $r;                  -moz-border-radius: 5px;
    -webkit-border-radius: $r;               -webkit-border-radius: 5px;
    border-radius: $r;                       border-radius: 5px; }
  }
                                           #footer {
  #navbar li {                               -moz-border-radius: 10px;
    @include rounded(5px);                   -webkit-border-radius: 10px;
  }                                          border-radius: 10px; }
  #footer {
    @include rounded;
  }




                             Grandrath    Sass
Erste Schritte
                               Features
                        Fazit und Links

Mixins mit Parametern




  input.scss                               output.css

  @mixin rounded($r: 10px) {               #navbar li {
    -moz-border-radius: $r;                  -moz-border-radius: 5px;
    -webkit-border-radius: $r;               -webkit-border-radius: 5px;
    border-radius: $r;                       border-radius: 5px; }
  }
                                           #footer {
  #navbar li {                               -moz-border-radius: 10px;
    @include rounded(5px);                   -webkit-border-radius: 10px;
  }                                          border-radius: 10px; }
  #footer {
    @include rounded;
  }




                             Grandrath    Sass
Erste Schritte
                                 Features
                          Fazit und Links

@import


  rounded.scss                               output.css
  @mixin rounded($r: 10px) {                 #navbar li {
    -moz-border-radius: $r;                    -moz-border-radius: 5px;
    -webkit-border-radius: $r;                 -webkit-border-radius: 5px;
    border-radius: $r; }                       border-radius: 5px; }

                                             #footer {
                                               -moz-border-radius: 10px;
  input.scss                                   -webkit-border-radius: 10px;
                                               border-radius: 10px; }
  @import "rounded";

  #navbar li {
    @include rounded(5px); }

  #footer {
    @include rounded; }


                              Grandrath     Sass
Erste Schritte
                                 Features
                          Fazit und Links

@import


  rounded.scss                               output.css
  @mixin rounded($r: 10px) {                 #navbar li {
    -moz-border-radius: $r;                    -moz-border-radius: 5px;
    -webkit-border-radius: $r;                 -webkit-border-radius: 5px;
    border-radius: $r; }                       border-radius: 5px; }

                                             #footer {
                                               -moz-border-radius: 10px;
  input.scss                                   -webkit-border-radius: 10px;
                                               border-radius: 10px; }
  @import "rounded";

  #navbar li {
    @include rounded(5px); }

  #footer {
    @include rounded; }


                              Grandrath     Sass
Erste Schritte
                                Features
                         Fazit und Links

@extend




  input.scss                                output.css

  .error {                                  .error, .seriousError {
    border: 1px #f00;                         border: 1px #f00;
    background-color: #fdd;                   background-color: #fdd; }
  }
                                            .seriousError {
  .seriousError {                             border-width: 3px; }
    @extend .error;
    border-width: 3px;
  }




                              Grandrath    Sass
Erste Schritte
                                Features
                         Fazit und Links

@extend




  input.scss                                output.css

  .error {                                  .error, .seriousError {
    border: 1px #f00;                         border: 1px #f00;
    background-color: #fdd;                   background-color: #fdd; }
  }
                                            .seriousError {
  .seriousError {                             border-width: 3px; }
    @extend .error;
    border-width: 3px;
  }




                              Grandrath    Sass
Erste Schritte
                                Features
                         Fazit und Links

Pro und Kontra


  Pro
        Vieles, was man bisher bei CSS vermisst hat (z. B.
        Variablen)
        Flache Lernkurve durch CSS-Syntax
        Code wird besser wartbar (z. B. Nesting, Mixins)
        Stylesheets können zur Entwicklung auf mehrere Dateien
        verteilt und in der Produktion in einer einzelnen Datei
        ausgeliefert werden (@import)

  Kontra
     Deployment-Prozess wird komplexer
        Stylesheets können größer als erwartet werden

                             Grandrath     Sass
Erste Schritte
                            Features
                     Fazit und Links

Links



        Sass
        http://sass-lang.com/
        Haml
        http://haml-lang.com/
        Ruby
        http://www.ruby-lang.org/
        RubyGems
        http://rubygems.org/
        Ruby für Windows
        http://rubyinstaller.org/


                         Grandrath     Sass
Erste Schritte
       Features
Fazit und Links




Fragen?

  Fragen!


    Grandrath     Sass

Weitere ähnliche Inhalte

Mehr von insertEFFECT GmbH

Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...
Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...
Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...insertEFFECT GmbH
 
Papa darf ich bisschen iPad spielen?
Papa darf ich bisschen iPad spielen?Papa darf ich bisschen iPad spielen?
Papa darf ich bisschen iPad spielen?insertEFFECT GmbH
 
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad AppsinsertEFFECT GmbH
 
Go-Mobile-Strategien für Early Birds und Late Risers - Benno Bartels
Go-Mobile-Strategien für Early Birds und Late Risers - Benno BartelsGo-Mobile-Strategien für Early Birds und Late Risers - Benno Bartels
Go-Mobile-Strategien für Early Birds und Late Risers - Benno BartelsinsertEFFECT GmbH
 
Android tablet webmontag_benno_bartels
Android tablet webmontag_benno_bartelsAndroid tablet webmontag_benno_bartels
Android tablet webmontag_benno_bartelsinsertEFFECT GmbH
 
Prozessorientierte Realisierung einer mobilen Webseite
Prozessorientierte Realisierung einer mobilen WebseiteProzessorientierte Realisierung einer mobilen Webseite
Prozessorientierte Realisierung einer mobilen WebseiteinsertEFFECT GmbH
 
Usability test on mobile devices
Usability test on mobile devicesUsability test on mobile devices
Usability test on mobile devicesinsertEFFECT GmbH
 

Mehr von insertEFFECT GmbH (10)

Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...
Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...
Die Windows 8 Tablet App der DATEV mit SCRUM - Lessions Learned - Developer W...
 
Usability Engineering
Usability EngineeringUsability Engineering
Usability Engineering
 
Kognitives durchgehen
Kognitives durchgehenKognitives durchgehen
Kognitives durchgehen
 
Papa darf ich bisschen iPad spielen?
Papa darf ich bisschen iPad spielen?Papa darf ich bisschen iPad spielen?
Papa darf ich bisschen iPad spielen?
 
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps
2 Apps zum Preis von einer? Unterschiede zwischen iPhone und iPad Apps
 
Go-Mobile-Strategien für Early Birds und Late Risers - Benno Bartels
Go-Mobile-Strategien für Early Birds und Late Risers - Benno BartelsGo-Mobile-Strategien für Early Birds und Late Risers - Benno Bartels
Go-Mobile-Strategien für Early Birds und Late Risers - Benno Bartels
 
Android tablet webmontag_benno_bartels
Android tablet webmontag_benno_bartelsAndroid tablet webmontag_benno_bartels
Android tablet webmontag_benno_bartels
 
Usability Im Mobile Web
Usability Im Mobile WebUsability Im Mobile Web
Usability Im Mobile Web
 
Prozessorientierte Realisierung einer mobilen Webseite
Prozessorientierte Realisierung einer mobilen WebseiteProzessorientierte Realisierung einer mobilen Webseite
Prozessorientierte Realisierung einer mobilen Webseite
 
Usability test on mobile devices
Usability test on mobile devicesUsability test on mobile devices
Usability test on mobile devices
 

Syntactically Awesome Stylesheets mit Sass

  • 1. Erste Schritte Features Fazit und Links Syntactically Awesome Stylesheets mit Sass Martin Grandrath InsertEFFECT GmbH Webmontag Erlangen, 11. Oktober 2010 Grandrath Sass
  • 2. Erste Schritte Installation Features Ein Stylesheet mit Sass Fazit und Links Installation Ruby Rubygems gem install haml Grandrath Sass
  • 3. Erste Schritte Installation Features Ein Stylesheet mit Sass Fazit und Links Jedes Stylesheet ist eine Sass-Datei input.scss #navbar { width: 80%; height: 23px; } $ sass input.scss:output.css output.css #navbar { width: 80%; height: 23px; } Grandrath Sass
  • 4. Erste Schritte Installation Features Ein Stylesheet mit Sass Fazit und Links Jedes Stylesheet ist eine Sass-Datei input.scss #navbar { width: 80%; height: 23px; } $ sass input.scss:output.css output.css #navbar { width: 80%; height: 23px; } Grandrath Sass
  • 5. Erste Schritte Installation Features Ein Stylesheet mit Sass Fazit und Links Jedes Stylesheet ist eine Sass-Datei input.scss #navbar { width: 80%; height: 23px; } $ sass input.scss:output.css output.css #navbar { width: 80%; height: 23px; } Grandrath Sass
  • 6. Erste Schritte Installation Features Ein Stylesheet mit Sass Fazit und Links Nützliche Parameter sass -watch input.scss:output.css Aktualisiert output.css automatisch wenn sich input.scss ändert sass -style compressed input.scss:output.css Erstellt eine minimierte Version ohne Whitespace und Kommentare Grandrath Sass
  • 7. Erste Schritte Features Fazit und Links Kommentare input.scss output.css /* A CSS comment */ /* A CSS comment */ body { color: black; } body { color: black; } // A Sass comment a { color: green; } a { color: green; } Grandrath Sass
  • 8. Erste Schritte Features Fazit und Links Kommentare input.scss output.css /* A CSS comment */ /* A CSS comment */ body { color: black; } body { color: black; } // A Sass comment a { color: green; } a { color: green; } Grandrath Sass
  • 9. Erste Schritte Features Fazit und Links Variablen input.scss output.css $link-color: #ce4dd6; a { color: #ce4dd6; } a { color: $link-color; } Grandrath Sass
  • 10. Erste Schritte Features Fazit und Links Variablen input.scss output.css $link-color: #ce4dd6; a { color: #ce4dd6; } a { color: $link-color; } Grandrath Sass
  • 11. Erste Schritte Features Fazit und Links Nesting input.scss output.css #navbar { #navbar { width: 80%; width: 80%; height: 23px; height: 23px; } #navbar ul { ul { list-style-type: none; } list-style-type: none; #navbar li { } float: left; } li { #navbar li a { float: left; font-weight: bold; } a { font-weight: bold; } } } Grandrath Sass
  • 12. Erste Schritte Features Fazit und Links Nesting input.scss output.css #navbar { #navbar { width: 80%; width: 80%; height: 23px; height: 23px; } #navbar ul { ul { list-style-type: none; } list-style-type: none; #navbar li { } float: left; } li { #navbar li a { float: left; font-weight: bold; } a { font-weight: bold; } } } Grandrath Sass
  • 13. Erste Schritte Features Fazit und Links Arithmetik input.scss output.css #navbar { #navbar { $width: 800px; width: 800px; } $items: 5; #navbar li { float: left; width: $width; width: 160px; } li { float: left; width: $width/$items; } } Grandrath Sass
  • 14. Erste Schritte Features Fazit und Links Arithmetik input.scss output.css #navbar { #navbar { $width: 800px; width: 800px; } $items: 5; #navbar li { float: left; width: $width; width: 160px; } li { float: left; width: $width/$items; } } Grandrath Sass
  • 15. Erste Schritte Features Fazit und Links Arithmetik mit Farben input.scss output.css p { p { color: #010203 + #040506; color: #050709; } } a { $links: #4e2e9e; color: #4e2e9e; } a { a:hover { color: $links; } color: #9175d7; } a:hover { color: lighten($links, 25%); } Grandrath Sass
  • 16. Erste Schritte Features Fazit und Links Arithmetik mit Farben input.scss output.css p { p { color: #010203 + #040506; color: #050709; } } a { $links: #4e2e9e; color: #4e2e9e; } a { a:hover { color: $links; } color: #9175d7; } a:hover { color: lighten($links, 25%); } Grandrath Sass
  • 17. Erste Schritte Features Fazit und Links Referenz auf Elternelement input.scss output.css #main { #main { color: black; color: black; } a { #main a { font-weight: bold; font-weight: bold; } &:hover { color: red; } #main a:hover { } color: red; } } Grandrath Sass
  • 18. Erste Schritte Features Fazit und Links Referenz auf Elternelement input.scss output.css #main { #main { color: black; color: black; } a { #main a { font-weight: bold; font-weight: bold; } &:hover { color: red; } #main a:hover { } color: red; } } Grandrath Sass
  • 19. Erste Schritte Features Fazit und Links Mixins input.scss output.css @mixin rounded { #navbar li { $r: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: $r; border-radius: 10px; } -webkit-border-radius: $r; border-radius: $r; #footer { } -moz-border-radius: 10px; -webkit-border-radius: 10px; #navbar li { border-radius: 10px; } @include rounded; } #footer { @include rounded; } Grandrath Sass
  • 20. Erste Schritte Features Fazit und Links Mixins input.scss output.css @mixin rounded { #navbar li { $r: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: $r; border-radius: 10px; } -webkit-border-radius: $r; border-radius: $r; #footer { } -moz-border-radius: 10px; -webkit-border-radius: 10px; #navbar li { border-radius: 10px; } @include rounded; } #footer { @include rounded; } Grandrath Sass
  • 21. Erste Schritte Features Fazit und Links Mixins mit Parametern input.scss output.css @mixin rounded($r: 10px) { #navbar li { -moz-border-radius: $r; -moz-border-radius: 5px; -webkit-border-radius: $r; -webkit-border-radius: 5px; border-radius: $r; border-radius: 5px; } } #footer { #navbar li { -moz-border-radius: 10px; @include rounded(5px); -webkit-border-radius: 10px; } border-radius: 10px; } #footer { @include rounded; } Grandrath Sass
  • 22. Erste Schritte Features Fazit und Links Mixins mit Parametern input.scss output.css @mixin rounded($r: 10px) { #navbar li { -moz-border-radius: $r; -moz-border-radius: 5px; -webkit-border-radius: $r; -webkit-border-radius: 5px; border-radius: $r; border-radius: 5px; } } #footer { #navbar li { -moz-border-radius: 10px; @include rounded(5px); -webkit-border-radius: 10px; } border-radius: 10px; } #footer { @include rounded; } Grandrath Sass
  • 23. Erste Schritte Features Fazit und Links @import rounded.scss output.css @mixin rounded($r: 10px) { #navbar li { -moz-border-radius: $r; -moz-border-radius: 5px; -webkit-border-radius: $r; -webkit-border-radius: 5px; border-radius: $r; } border-radius: 5px; } #footer { -moz-border-radius: 10px; input.scss -webkit-border-radius: 10px; border-radius: 10px; } @import "rounded"; #navbar li { @include rounded(5px); } #footer { @include rounded; } Grandrath Sass
  • 24. Erste Schritte Features Fazit und Links @import rounded.scss output.css @mixin rounded($r: 10px) { #navbar li { -moz-border-radius: $r; -moz-border-radius: 5px; -webkit-border-radius: $r; -webkit-border-radius: 5px; border-radius: $r; } border-radius: 5px; } #footer { -moz-border-radius: 10px; input.scss -webkit-border-radius: 10px; border-radius: 10px; } @import "rounded"; #navbar li { @include rounded(5px); } #footer { @include rounded; } Grandrath Sass
  • 25. Erste Schritte Features Fazit und Links @extend input.scss output.css .error { .error, .seriousError { border: 1px #f00; border: 1px #f00; background-color: #fdd; background-color: #fdd; } } .seriousError { .seriousError { border-width: 3px; } @extend .error; border-width: 3px; } Grandrath Sass
  • 26. Erste Schritte Features Fazit und Links @extend input.scss output.css .error { .error, .seriousError { border: 1px #f00; border: 1px #f00; background-color: #fdd; background-color: #fdd; } } .seriousError { .seriousError { border-width: 3px; } @extend .error; border-width: 3px; } Grandrath Sass
  • 27. Erste Schritte Features Fazit und Links Pro und Kontra Pro Vieles, was man bisher bei CSS vermisst hat (z. B. Variablen) Flache Lernkurve durch CSS-Syntax Code wird besser wartbar (z. B. Nesting, Mixins) Stylesheets können zur Entwicklung auf mehrere Dateien verteilt und in der Produktion in einer einzelnen Datei ausgeliefert werden (@import) Kontra Deployment-Prozess wird komplexer Stylesheets können größer als erwartet werden Grandrath Sass
  • 28. Erste Schritte Features Fazit und Links Links Sass http://sass-lang.com/ Haml http://haml-lang.com/ Ruby http://www.ruby-lang.org/ RubyGems http://rubygems.org/ Ruby für Windows http://rubyinstaller.org/ Grandrath Sass
  • 29. Erste Schritte Features Fazit und Links Fragen? Fragen! Grandrath Sass