Skip to content

Outras Diretivas

@import

Da mesma forma que a at-rule @import do CSS, aqui há um pouco mais de flexibilidade por poder inserir em qualquer ponto do seu CSS e não apenas no topo do arquivo.

@source

A diretiva @source tem como função explicitamente especificar novos arquivos que deverão ser escaneados pelo TailwindCSS.

Note que o TailwindCSS já faz esse “scan” automático baseado no seu .gitignore. Se algum arquivo não estiver sendo escaneado - por exemplo, alguma biblioteca externa, você deve usar o @source.

@utility

Você pode adicionar classes utilitárias novas usando @utility.

Por exemplo:

@utility lalaland {
font-size: 10rem;
}

Mas por que não utilizar apenas uma classe com css tradicional? Por que não fazer o que está abaixo?

.lalaland {
font-size: 10rem;
}

A resposta é porque desta forma, essa classe não irá funcionar com variantes como hover:, sm:, etc

@custom-variant

Da mesma forma que podemos criar classes utilitárias que podem ser utilizadas com variantes (usando @utility), podemos criar variantes que podem ser utilizadas com classes utilitárias. Dessa vez vamos usar o @custom-variant.

@custom-variant lalaland (&:where([data-theme="lalaland"] *))

Esse é um caso de uso bastante específico - e dificilmente você irá criar uma variante nova. O que é mais provável é você sobrescrever alguma delas.

Como referência, aqui estão todas as variantes do TailwindCSS

@variant

A diretiva @variant tem como finalidade preponderante o uso de uma variante dentro do CSS puro (onde você não teria acesso).

O exemplo da documentação:

.my-element {
background: white;
@variant dark {
@variant hover {
background: black;
}
}
}

@apply

Da mesma forma que a @variant, a diretiva @apply serve para aplicar CSS customizado usando a sintaxe do TailwindCSS dentro de um arquivo CSS:

Um exemplo de botão:

.btn {
@apply p-4 bg-black text white rounded-lg shadow-md;
}