Hairline
Des bordures et anneaux larges d’exactement un pixel d’appareil sur chaque écran, via une seule variable que tout le thème lit.
Hairline fait partie du thème HextaUI. Si vous avez ajouté le thème ou un composant, vous l’avez.
pnpm dlx shadcn@latest add https://hextaui.com/r/theme.jsonOu ajoutez-le à votre CSS global à la main.
Vous aurez rarement besoin d’y recourir. Le thème en fait la largeur de bordure par défaut : border, border-t et divide-y dessinent donc tous des hairlines. Utilisez la variable directement là où Tailwind n’a pas de valeur par défaut, comme les anneaux, les contours et les lignes dessinées avec un arrière-plan.
Un pixel CSS couvre deux ou trois pixels physiques sur la plupart des écrans : une bordure de 1px fait donc en réalité deux ou trois pixels d’appareil d’épaisseur. --hairline divise par le ratio de pixels de l’écran pour que chaque ligne mesure exactement un pixel d’appareil, comme les applications natives dessinent leurs séparateurs. Sur un écran standard, il reste à 1px.
| Ratio de pixels | Description |
|---|---|
1× | 1px |
1.5× | 0.667px |
2× | 0.5px |
3× | 0.333px |
4× | 0.25px |
Listes et cartes
border et divide-y simples. Des séparateurs plus fins regroupent les lignes sans les enfermer.
- Les composants HextaUI dessinent leurs bords avec
inset-ring-(length:--hairline)plutôt qu’avec des bordures. Un anneau intérieur n’occupe pas d’espace de mise en page : un état qui change la couleur ou la largeur de l’anneau ne décale donc jamais le contenu. - Les hairlines sont plus légères à l’écran : une couleur de bordure réglée pour des lignes de 1px peut paraître pâle. Le
--borderdu thème est réglé pour les hairlines. - Utilisez
border-2ou plus large pour souligner, comme une carte sélectionnée. Ceux-ci restent en pixels CSS.
| Nom | Description |
|---|---|
--hairline | Un pixel d’appareil, en pixels CSS. |
border-hairline | Définit border-width sur --hairline. |
--default-border-width | Défini sur --hairline : border et divide l’utilisent donc par défaut. |