Raccourcis
Les raccourcis vous permettent de combiner plusieurs règles en un seul raccourci, inspiré par Windi CSS.
Utilisation
ts
shortcuts: {
// raccourcis vers plusieurs utilitaires
'btn': 'py-2 px-4 font-semibold rounded-lg shadow-md',
'btn-green': 'text-white bg-green-500 hover:bg-green-700',
// alias d'utilitaire unique
'red': 'text-red-100',
}
En plus du mapping simple, UnoCSS vous permet aussi de définir des raccourcis dynamiques.
Similaire aux Règles, un raccourci dynamique est la combinaison d'un matcher RegExp
et d'une fonction gestionnaire.
ts
shortcuts: [
// vous pouvez encore avoir le style objet
{
btn: 'py-2 px-4 font-semibold rounded-lg shadow-md',
},
// raccourcis dynamiques
[/^btn-(.*)$/, ([, c]) => `bg-${c}-400 text-${c}-100 py-2 px-4 rounded-lg`],
]
Avec cela, nous pourrions utiliser btn-green
et btn-red
pour générer le CSS suivant :
css
.btn-green {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 1rem;
padding-right: 1rem;
--un-bg-opacity: 1;
background-color: rgb(74 222 128 / var(--un-bg-opacity));
border-radius: 0.5rem;
--un-text-opacity: 1;
color: rgb(220 252 231 / var(--un-text-opacity));
}
.btn-red {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 1rem;
padding-right: 1rem;
--un-bg-opacity: 1;
background-color: rgb(248 113 113 / var(--un-bg-opacity));
border-radius: 0.5rem;
--un-text-opacity: 1;
color: rgb(254 226 226 / var(--un-text-opacity));
}