Criando Layouts com Susy Framework

Com a alta demanda e prazos cada vez menores somos obrigados a trabalhar cada vez mais rápido e isso serve de incentivo para que novos frameworks sejam feitos buscando melhorar a qualidade no desenvolvimento. Um desses frameworks é o Susy e nesse artigo vamos conhecer e dar os primeiros passos com ele. O que é Susy?

Com a alta demanda e prazos cada vez menores somos obrigados a trabalhar cada vez mais rápido e isso serve de incentivo para que novos frameworks sejam feitos buscando melhorar a qualidade no desenvolvimento. Um desses frameworks é o Susy e nesse artigo vamos conhecer e dar os primeiros passos com ele.

O que é Susy?

Susy é um framework que permite criar grids de acordo com as necessidades do seu site. Diferente de outros como Bootstrap e Foundation, você não vai precisar importar um arquivo cheio de classes em que vai usar apenas algumas delas. O Susy trabalha direto no estilo das classes que você definiu e personalizou.

Para começar a usá-lo você precisa ter o Sass instalado e o mínimo de conhecimento sobre ele. Não vou me aprofundar em Sass, pois não é o foco desse artigo, mas para quem tiver alguma dúvida a respeito pode ver uma série de artigos aqui mesmo no Tableless.

Agora que já sabemos do que se trata vamos começar a desenvolver nosso layout com Susy.

Assumindo que você já tem o Sass instalado, vamos instalar o Susy. Abra o prompt de comando e digite:

Após concluir a instalação vamos criar uma pasta para o projeto e dentro dela um arquivo index.html, uma pasta css e uma pasta scss com um arquivo style.scss dentro dela.

Iniciando o desenvolvimento

Vamos construir o seguinte layout:

Primeiramente vamos iniciar o Sass para que nosso código possa ser compilado. Abra a pasta do projeto na linha de comando e digite:

Feito isso um arquivo style.css foi criado dentro da pasta css. Vamos adiciona-lo no head no html:

Vamos adicionar o normalize ao nosso projeto

Para usar o Susy no projeto temos apenas que adicionar a seguinte linha no style.scss:

Susy Map

Susy Map é um conjunto de instruções que são declaradas no início do projeto.  O grid é gerado de acordo com as informações declaradas nele. Abaixo temos o Map do nosso projeto, vamos adiciona-lo no style.scss, mais informações podem ser adicionadas , mas para nosso projeto é o suficiente. As linhas estão comentadas informando o que cada uma faz.

Vou adicionar o código completo, mas somente as funções do Susy serão explicadas. Então vamos começar! No HTML, vamos adicionar o header da página:

Vamos adicionar o estilo dele:

Depois do header vamos inserir o banner no html:

Agora o estilo do banner:

O “@include span (8 of 8)” é uma função do Susy que diz que o banner irar ocupar 8 colunas das 8 declaradas no Susy Map, mas não é só isso, reparem que no margin adicionamos um valor “gutter()”, isso é outra função do Susy que adiciona o valor que existe entre os grids, pode ver como o espaço que está entre o header e o banner é o mesmo que está entre as 8 colunas que definimos no grids.

Agora vamos adicionar o conteúdo do layout:

E o estilo delas:

Repare nos includes que acabamos de usar. Na mesma linha usamos 2 colunas para o sidebar e as 6 para o content, veja que adicionamos um last no final do include na classe content, esse last serve para dizer que são as ultimas colunas da linha. O espaço entre os grids é feito com um margin-right e o last serve parar remover esse margin-right do ultimo item do grid. Olha lá o aquivo style.css para entender melhor o que está sendo feito.

O footer não tem muito o que falar, então vamos apenas adicionar o código:

E o estilo:

Por fim vamos apenas remover do Susy Map a linha que exibe os grids:

Pronto, finalizamos o nosso layout, fácil não é?! Esse projeto foi bem simples apenas para apresentar o framework e mostrar como funciona, mas não pare por aí, faça o download do código, brinque com ele, acesse a documentação do Susy e conheça outros recursos que podem te ajudar bastante no desenvolvimento.

Espero que tenham gostado do artigo, bons estudos!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *