Sass: Qué es? y Cómo se Utiliza?

Sass para programadores web, que es? y como funciona?

Sass es un preprocesador CSS mediante el cual podrás escribir código CSS de un modo más eficiente. Si eres un desarrollador web, seguramente ya hayas escuchado hablar de él y es más, a día de hoy su uso es un requisito en la mayor parte de ofertas de empleo.

Sass es un preprocesador  es una aplicación que compila el código escrito en un lenguaje determinado y lo transforma en otro. Sass es un preprocesador CSS, es decir, que coge el código programado en otro lenguaje (Sass, SCSS) y lo transforma en código CSS. Lo ideal sería poder utilizar directamente el código programado en otro lenguaje, pero lamentablemente los navegadores solamente entienden código CSS.

Con Sass te ahorrarás bastante trabajo a la hora de cambiar ciertos estilos en tus proyectos. Por ejemplo, imagínate que tienes un color definido en múltiples lugares de tu hoja de estilos. Si quieres cambiarlo, tendrás que buscar el color y cambiarlo en todos los lugares en los que aparece.

Sass agrega una gran cantidad de posibilidades frente a las hojas de estilos CSS convencionales. Entre ellas están las siguientes:

Instalación de Sass en Windows

Ruby no viene instalado por defecto en Windows, por lo que antes de que instales Sass, tendrás que instalar Ruby. Puedes instalar Ruby en Windows siguiendo estos pasos:

  1. Accede a la Web de Ruby y descarga el instalador de Ruby. Escoge la versión recomendada para tu sistema operativo, ya sea la x86 si tu versión de Windows es de 32 bits o la x64 si tu sistema operativo es de 64 bits. la versión se Ruby será la misma independientemente de que utilices Windows 8, Windows 10 o cualquier otra versión de Windows.
  2. Seguidamente, haz clic en el instalador que has descargado para iniciar la instalación de Ruby. Acepta las condiciones y haz clic en «Next».
  3. Es recomendable que selecciones las opciones que el instalador marca por defecto. En especial, no te olvides de marcar la opción que añade los ejecutables de Ruby al path del sistema. Luego haz clic en «Next».
  4. Luego, aunque no es indispensable, deberías seleccionar también la opción que sirve para instalar el MSYS2 development toolchain. Luego haz clic en «Next» para iniciar la instalación.
  5. Cuando finalice la instalación de Ruby se abrirá una ventana de símbolo del sistema que servirá para instalar MSYS2, si es que has marcado antes la opción. Puedes escoger entre tres opciones. Sencillamente pulsa INTRO y espera a que finalice la instalación.

Una vez hayas instalado Ruby, abre una ventana  de terminal o de símbolo del sistema e introduce comando ruby -v para asegurarte de que se ha instalado correctamente.

Seguidamente, instala Sass mediante el siguiente comando, que tendrás que ejecutar en modo administrador:

gem install sass

Tras unos segundos, Sass debería estar ya instalado en tu sistema.

 

Cómo compilar archivos SASS

Vamos a crear un directorio; puedes darle cualquier nombre. En mi caso crearé un directorio «tutorial-sass» en mi directorio de proyectos. Puedes hacerlo desde la interfaz de tu sistema operativo o desde la línea de comandos:

mkdir  tutorial-sass

Luego crea el archivo estilos.scss en su interior desde la interfaz de Windows, desde tu IDE o desde la línea de comandos, como prefieras:

touch estilos.scss

Ahora edita el archivo estilos.scss y agrega el siguiente código de ejemplo:

$text-color: #e2777a;
$background-color: #272822;

.area {
  background-color: $background-color;
}

p {
  font-color: $text-color;
}

Si intentas incluir este archivo .scss tal y como está en la sección head de un archivo html, no funcionará, ya que tenemos que compilarlo a CSS. Durante el proceso de compilado, las variables $text-color y $background-color se reemplazarán por sus respectivos valores tanto en el caso de la etiqueta p como en el caso de la clase .area.

Para compilar el archivo desplázate hasta el directorio en el que estás usando al terminal de comandos:

cd proyectos/tutorial-sass

Compilación automática: sass watch

Agregando el flag --watch al comando sass podrás hacer que el archivo .css se genere cada vez que modifiques el archivo .scss. De este modo no necesitarás ejecutar el comando cada vez que quieras compilar un archivo:

sass --watch estilos.scss:estilos.css

Como salida del comando verás que se muestra algo así, indicando que la compilación automática está en funcionamiento:

> > > Sass is watching for changes. Press Ctrl-C to stop.

Si realizas cualquier cambio en el archivo se detectará un cambio, por lo que si observas la terminal podrás ver lo siguiente:

> > > Change detected to: estilos.scss

        write estilos.css
        write estilos.css.map

 

Organización del código con Sass

Algunos desarrolladores incluyen un directorio llamado css para los archivos .css y otro directorio llamado sass para los archivos .scss. Otros configuran Sass para que los archivos resultantes estén en un directorio llamado dist, que es en donde reside el proyecto final. Sin embargo, otros prefieren crear un directorio llamado src y situar ahí los archivos SCSS. Lo importante es que separes ambas cosas, que sigas la misma filosofía en cada proyecto y que además tengas los archivos a mano.

Lo único que podríamos decir que es imprescindible es que los archivos .scss parciales comiencen por un guión bajo:

 

El archivo SCSS principal del proyecto sigue siendo el archivo estilos.scss, en el que tenemos que importar todos los archivos .scss del proyecto. Cuando importes los archivos no tendrás que escribir ni el guión bajo antes de su nombres ni al extensión de los archivos, dado que es algo que Sass ya espera encontrarse. Aquí tienes el archivo SCSS correspondiente a la estructura anterior:

// Base

@import 'base/mixins';
@import 'base/variables';

// Componentes

@import 'componentes/menu';
@import 'componentes/buttons';
@import 'componentes/header';
@import 'componentes/footer';

// Secciones

@import 'secciones/principal';
@import 'secciones/proyectos';
@import 'secciones/blog';
@import 'secciones/contacta';

Existen muchos otro método que te permitirá compilar código Sass. En el mundo de JavaScript es habitual compilar muchos otros elementos para que tu navegador pueda comprender el código, como por ejemplo código TypeScript, React, Svelte o Vue. Debido a ello suelen utilizarse aplicaciones que automatizan todos estos comandos, como por ejemplo Grunt o Gulp, que es algo que veremos en otros tutoriales. Y esto ha sido todo.

Salir de la versión móvil