Was ist Sass (SCSS)?

  • Syntactically Awesome Stylesheets
  • Präprozessor für CSS
  • von Hampton Catlin
  • Verschachtelung möglich
  • vereinfacht designen

 

 

 

...einige Beispiele SCSS vs. CSS

SCSS

$font-stack:    Helvetica, serif;
$primary-color: #333;

body {
  font: 100% $font-stack;
  color: $primary-color;
}

 

.container1 {
  background-color: $primary-color;
}

 

CSS

body {
  font: 100% Helvetica, serif;
  color: #333;
}

 

.container1 {
  background-color: #333;
}

--> Variablen

SCSS

nav {
  ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  li { display: inline-block; }

  a {
    display: block;
    padding: 6px 12px;
    text-decoration: none;
  }
}

 

CSS

nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

nav li {
  display: inline-block;
}

nav a {
  display: block;
  padding: 6px 12px;
  text-decoration: none;
}

--> Nesting

SCSS

@mixin border-radius($radius) {
  -webkit-border-radius: $radius;
     -moz-border-radius: $radius;
      -ms-border-radius: $radius;
          border-radius: $radius;
}

.box { 
   @include border-radius(10px);
}

 

CSS

.box {
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  border-radius: 10px;
}

--> Mixins

SCSS

.message {
  border: 1px solid #ccc;
  padding: 10px;
  color: #333;
}

.success {
  @extend .message;
  border-color: green;
}

.error {
  @extend .message;
  border-color: red;
}

 

CSS

.message, .success, .error, .warning {
  border: 1px solid #cccccc;
  padding: 10px;
  color: #333;
}

.success {
  border-color: green;
}

.error {
  border-color: red;
}

--> Extend

SCSS

.container { 
   width: 100%; 
}

article[role="main"] {
  float: left;
  width: 600px / 960px * 100%;
}

aside[role="complementary"] {
  float: right;
  width: 300px / 960px * 100%;
}

 

CSS

.container {
  width: 100%;
}

article[role="main"] {
  float: left;
  width: 62.5%;
}

aside[role="complementary"] {
  float: right;
  width: 31.25%;
}

--> Operators

Compiler

SASS

By Robin Miozzari

SASS

  • 629