Hairline
Bordas e anéis com exatamente um pixel de dispositivo de largura em qualquer tela, por meio de uma variável que todo o tema lê.
Hairline faz parte do tema do HextaUI. Se você adicionou o tema ou qualquer componente, você já o tem.
pnpm dlx shadcn@latest add https://hextaui.com/r/theme.jsonOu adicione-o ao seu CSS global à mão.
Você raramente precisa recorrer a ele. O tema o torna a largura de borda padrão, então border, border-t e divide-y desenham hairlines. Use a variável diretamente onde o Tailwind não tem padrão, como rings, outlines e linhas desenhadas com um background.
Um pixel CSS cobre dois ou três pixels físicos na maioria das telas, então uma borda de 1px na verdade tem dois ou três pixels de dispositivo de espessura. --hairline divide pela proporção de pixels da tela para que toda linha tenha exatamente um pixel de dispositivo, como os apps nativos desenham separadores. Em uma tela padrão, continua 1px.
| Proporção de pixels | Descrição |
|---|---|
1× | 1px |
1.5× | 0.667px |
2× | 0.5px |
3× | 0.333px |
4× | 0.25px |
Listas e cards
border e divide-y simples. Separadores mais finos agrupam as linhas sem encaixotá-las.
- Os componentes do HextaUI desenham as bordas com
inset-ring-(length:--hairline)em vez de borders. Um inset ring não ocupa espaço no layout, então um estado que muda a cor ou a largura do anel nunca desloca o conteúdo. - Hairlines são mais leves na página, então uma cor de borda ajustada para linhas de 1px pode parecer fraca. O
--borderdo tema é ajustado para hairlines. - Use
border-2ou mais largo para dar ênfase, como em um card selecionado. Esses permanecem em pixels CSS.
| Nome | Descrição |
|---|---|
--hairline | Um pixel de dispositivo, em pixels CSS. |
border-hairline | Define border-width como --hairline. |
--default-border-width | Definido como --hairline, então border e divide o usam por padrão. |