Closed4
shadcn/uiのTooltipをdisabledのボタンに使う

これをこんな感じに使いたい!!
button
in button
にならないようにasChild
をつけてこんなコードになったけど...
<Tooltip>
<TooltipTrigger className="cursor-not-allowed" asChild>
<Button
variant="outline"
size="sm"
disabled
>
Disconnect
</Button>
</TooltipTrigger>
<TooltipContent>
<p>You cannot unlink your last account</p>
</TooltipContent>
</Tooltip>
ホバーしても何も出てこない...(泣)

radix-ui
のGitHubにIssueを発見。
pointer-events
が悪さをしていそう。
cssでpointer-events: auto !important;
を設定すればいいらしいけど、これをglobalにいれるのは影響がありそうなので避けたいところ...

さらに調べたらこんな解決法を発見!
shadcn/ui
のボタンのスタイルを書き換えるらしい
こんな感じ (上記のページより引用&翻訳)
- class
disabled:pointer-events-none
を削除 - すべての
hover:x
をenabled:hover:x
に置き換え - 必要に応じて、
disabled:cursor-not-allowed
を追加
🚫のカーソルが表示される
この方法が一番スマートだし影響が少なくて良さそう!

できた!
🚫のカーソルもちゃんと表示されてるけど、windowsの仕様でスクリーンショットからは消えちゃうみたい...
ボタンがdisabled
な理由を書きたいときって割とあるから、結構使えそう
このスクラップは4ヶ月前にクローズされました