Hairline
テーマ全体が読み取る 1 つの変数により、どの画面でも、ちょうど 1 デバイスピクセル幅の枠線とリング。
1px
inset-ring-1hairline
inset-ring-(length:--hairline)Hairline は HextaUI テーマの一部です。テーマまたは任意のコンポーネントを追加していれば、すでに入っています。
pnpm dlx shadcn@latest add https://hextaui.com/r/theme.jsonまたは、グローバル CSS に手動で追加します。
直接使う機会はほとんどありません。テーマがこれをデフォルトの枠線の幅にしているため、border、border-t、divide-y はすべてヘアラインを描画します。リング、アウトライン、背景で描く線など、Tailwind にデフォルトがない場面では、この変数を直接使ってください。
CSS の 1 ピクセルは、ほとんどの画面で 2 つか 3 つの物理ピクセルに相当するため、1px の枠線は実際にはデバイスピクセルで 2 つか 3 つ分の太さになります。--hairline はディスプレイのピクセル比で割るため、ネイティブアプリがセパレーターを描くのと同じように、すべての線がちょうど 1 デバイスピクセルになります。標準的なディスプレイでは 1px のままです。
| ピクセル比 | 説明 |
|---|---|
1× | 1px |
1.5× | 0.667px |
2× | 0.5px |
3× | 0.333px |
4× | 0.25px |
リストとカード
プレーンな border と divide-y。より細いセパレーターは、行を囲い込まずにグループ化します。
- HextaUI のコンポーネントは、枠線ではなく
inset-ring-(length:--hairline)で縁を描画します。内側のリングはレイアウト上の空間を取らないため、リングの色や幅が変わる状態でも、コンテンツがずれることはありません。 - ヘアラインはページ上でより薄く見えるため、1px の線に合わせた枠線の色は薄すぎるかもしれません。テーマの
--borderは、ヘアライン向けに調整されています。 - 選択されたカードのように強調したい場合は、
border-2かそれ以上の太さを使います。これらは CSS ピクセルのままです。
| 名前 | 説明 |
|---|---|
--hairline | CSS ピクセルで表した 1 デバイスピクセル。 |
border-hairline | border-width を --hairline に設定します。 |
--default-border-width | --hairline に設定されているため、border と divide のデフォルトになります。 |