Primeros pasos en Sass
Comentarios en Sass
Cuando comentamos nuestra hoja de estilo .scss, podemos usar tanto // como /* */, sin embargo, cuando la compilamos, sólo aparecen los comentarios que han sido introducidos con /* */, aquellos que tenían // desaparecen en el CSS que ha sido generado por el compilador. Por ejemplo:
Variables en Sass
Las variables en Sass comienzan por el símbolo $ seguido del nombre, por ejemplo: $bg-header: rgb(63, 81, 181);
Por tanto, aquí tenemos una variable definida y con un valor asignado, en este caso es un color. Con nuestro código de Sass, podemos llamar a $base simplemente con su nombre en cualquier punto de nuestra hoja de estilos, de forma que el nombre de nuestra variable en el código, será sustituido por el valor que le habíamos dado previamente cuando lo compilemos y generemos el fichero css.
Normalmente si definimos una variable, ésta puede ser utilizada posteriormente modificando el valor que le habíamos dado antes, de forma que el valor anterior es sobrescrito.
Al compilar el anterior archivo, el valor que tiene content es 'Shakira is back', ya que la variable $titulo-article fue sobrescrita, pasando de tener el valor de 'Deja de comer pipas' por 'Shakira is back'. Sin embargo si la segunda variable la hubiéramos definido así:
Lo que estaría haciendo sería comprobar si la variable $titulo tiene un valor previo, y en el caso de no tenerlo le daría el valor 'Shakira is back'.
Si por ejemplo estamos utilizando una definición modular en Sass como puede ser un archivo para dar estilos a los botones (un partial), si un valor no es definido previamente y tiene la característica de !default, éste será usado por defecto.
Por tanto, si estamos en nuestro archivo aplicacion.scss, y declaramos una variable que tenemos también en el archivo que importamos, lo que estamos haciendo es sobrescribir la variable que importaríamos por la que tenemos en nuestro “raíz”.
Tipos de variables
En Sass, podemos almacenar distintos tipos de valores como booleanos (cierto/falso), números con o sin unidades, colores, strings, listas y nulos.
Booleanos
Números (con o sin unidades)
Colores
Strings (con o sin comillas)
Listas
Mapas
Null