{"componentChunkName":"component---src-templates-single-template-tsx","path":"/sass-parte-3-mixins","result":{"data":{"site":{"siteMetadata":{"siteUrl":"https://blog.nandomoreira.dev","author":{"name":"Fernando Moreira","site":"https://nandomoreira.dev","social":{"disqus":"fernandomoreira"}}}},"markdownRemark":{"html":"<p><strong>Mixin</strong> foi definitivamente algo novo para mim, você consegue passar valores por parâmetros assim como funções, a diferença é que uma função retorna apenas 1 único valor e mixin retorna um bloco inteiro de CSS.</p>\n<p>O principal objetivo do Mixin é você poder reutilizar um determinado bloco de código por todo seu projeto.</p>\n<blockquote>\n<p>Um mixin permite fazer grupos de declarações CSS que você deseja reutilizar em todo o site. Você pode até mesmo passar valores para fazer a sua mixin mais flexível.\n<small> Traduzido de: <a href=\"http://sass-lang.com\">sass-lang.com</a></small></p>\n</blockquote>\n<h2>Legal e por onde eu começo?</h2>\n<p>Vamos fazer um exemplo simples, o mesmo usado na documentação do SASS (<a href=\"http://sass-lang.com/guide\">sass-lang.com/guide</a>).</p>\n<div class=\"gatsby-highlight\" data-language=\"scss\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-scss line-numbers\"><code class=\"language-scss\"><span class=\"token keyword\">@mixin</span> <span class=\"token function\">border-radius</span><span class=\"token punctuation\">(</span><span class=\"token variable\">$radius</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token property\">-webkit-border-radius</span><span class=\"token punctuation\">:</span> <span class=\"token variable\">$radius</span><span class=\"token punctuation\">;</span>\n  <span class=\"token property\">-moz-border-radius</span><span class=\"token punctuation\">:</span> <span class=\"token variable\">$radius</span><span class=\"token punctuation\">;</span>\n  <span class=\"token property\">-ms-border-radius</span><span class=\"token punctuation\">:</span> <span class=\"token variable\">$radius</span><span class=\"token punctuation\">;</span>\n  <span class=\"token property\">border-radius</span><span class=\"token punctuation\">:</span> <span class=\"token variable\">$radius</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token selector\">.card </span><span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">@include</span> <span class=\"token function\">border-radius</span><span class=\"token punctuation\">(</span>4px<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<p>Esse bloco acima vai nos gerar o seguinte trecho de CSS:</p>\n<div class=\"gatsby-highlight\" data-language=\"css\"><pre style=\"counter-reset: linenumber NaN\" class=\"language-css line-numbers\"><code class=\"language-css\"><span class=\"token selector\">.card</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token property\">-webkit-border-radius</span><span class=\"token punctuation\">:</span> 4px<span class=\"token punctuation\">;</span>\n  <span class=\"token property\">-moz-border-radius</span><span class=\"token punctuation\">:</span> 4px<span class=\"token punctuation\">;</span>\n  <span class=\"token property\">-ms-border-radius</span><span class=\"token punctuation\">:</span> 4px<span class=\"token punctuation\">;</span>\n  <span class=\"token property\">border-radius</span><span class=\"token punctuation\">:</span> 4px<span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code><span aria-hidden=\"true\" class=\"line-numbers-rows\" style=\"white-space: normal; width: auto; left: 0;\"><span></span><span></span><span></span><span></span><span></span><span></span></span></pre></div>\n<p>Legal não!?</p>\n<h2>Conclusão</h2>\n<p>Pense em Mixin como uma função que irá retornar um bloco inteiro de CSS ao invés de um valor único e que você pode usa-la em vários lugares do seu projeto sem precisar repetir ou copiar e colar blocos que são iguais.</p>\n<p>Por enquanto é isso, obrigado.</p>\n<hr>\n<ol>\n<li><a href=\"/conhecendo-o-pre-processador-sass-parte-1\">Conhecendo o pré-processador SASS - Instalação</a></li>\n<li><a href=\"/sass-variaveis-parte-2\">Conhecendo o pré-processador SASS - Variáveis</a></li>\n<li>Conhecendo o pré processador SASS - Mixins</li>\n<li><a href=\"/sass-parte-4-funcoes\">Conhecendo o pré processador SASS - Funções</a></li>\n<li><a href=\"/sass-parte-5-placeholder\">Conhecendo o pré-processador SASS - Placeholder</a></li>\n</ol>","excerpt":"Mixin foi definitivamente algo novo para mim, você consegue passar valores por parâmetros assim como funções, a diferença é que uma função retorna…","timeToRead":1,"frontmatter":{"category":["sass"],"date":"há 11 anos","datePublished":"2015-09-05T00:00:00.000Z","description":"Mixin foi definitivamente algo novo para mim, você consegue passar valores por parâmetros assim como funções","path":"/sass-parte-3-mixins","tags":["sass","css","pre-processador"],"title":"#3 - Conhecendo o pré processador SASS | Mixins","image":{"publicURL":"/static/conhecendo-o-pre-processador-sass-b6a1f24254111b01aa97dae9042b5345.jpg","name":"conhecendo-o-pre-processador-sass"}},"fields":{"readingTime":{"words":240}}}},"pageContext":{}}}