如何让daisyUI的Radio Tab在小屏幕下每个标签独占一行?
解决daisyUI长标签Tabs小屏幕换行问题
你可以通过添加Tailwind响应式类,让小屏幕下的Tabs垂直排列,每个标签单独占一行,具体修改如下:
- 给外层的
tabs容器添加flex-col sm:flex-row类,强制小屏幕下Tabs采用垂直布局 - 给每个
tab元素添加w-full sm:w-auto类,让小屏幕下标签宽度占满整行
修改后的完整代码:
<div role="tablist" className="tabs tabs-lifted flex-col sm:flex-row"> <input type="radio" name="my_tabs_2" role="tab" className="tab w-full sm:w-auto" aria-label="Tab 1 is very long" /> <div role="tabpanel" className="tab-content bg-base-100 border-base-300 rounded-box p-6">Tab content 1</div> <input type="radio" name="my_tabs_2" role="tab" className="tab w-full sm:w-auto" aria-label="Tab 2 is very very long" checked /> <div role="tabpanel" className="tab-content bg-base-100 border-base-300 rounded-box p-6">Tab content 2</div> <input type="radio" name="my_tabs_2" role="tab" className="tab w-full sm:w-auto" aria-label="Tab 3 is very very very long" /> <div role="tabpanel" className="tab-content bg-base-100 border-base-300 rounded-box p-6">Tab content 3</div> </div>
修改后,在默认640px以下的小屏幕中,每个标签会单独占一行,完整显示长文本;当屏幕宽度超过640px时,自动恢复为默认的横向排列样式。
内容的提问来源于stack exchange,提问作者Ooker
相关产品推荐
相关产品推荐

