抽屉是一种网格布局,可以在页面左侧或右侧显示/隐藏侧边栏。
类名 | 类型 | |
---|---|---|
drawer | 组件 | 侧边栏和内容的包装器 |
drawer-toggle | 部件 | 控制抽屉状态的隐藏复选框 |
drawer-content | 部件 | 内容部件 |
drawer-side | 部件 | 侧边栏部件 |
drawer-overlay | 部件 | 抽屉打开时覆盖页面的标签 |
drawer-end | 位置 | 将抽屉放在另一侧 |
drawer-open | 修饰符 | 强制抽屉打开 |
抽屉是一种网格布局,可以根据屏幕尺寸或基于一个值来显示/隐藏页面左侧或右侧的侧边栏drawer-toggle
复选框。
抽屉必须是内容和侧边栏的父元素。
.drawer // The root container
├── .drawer-toggle // A hidden checkbox to toggle the visibility of the sidebar
├── .drawer-content // All your page content goes here
│ ╰── // navbar, content, footer
│
╰── .drawer-side // Sidebar wrapper
├── .drawer-overlay // A dark overlay that covers the whole page when the drawer is open
╰── // Sidebar content (menu or anything)
抽屉侧边栏默认是隐藏的。 您可以使用以下类使其在较大的屏幕上可见lg:drawer-open
类(或使用其他响应式前缀:sm、md、lg、xl)
您可以使用 JavaScript 或单击标签
分配给隐藏复选框的标签来选中/取消选中复选框
打开抽屉会添加一个scrollbar-gutter到页面,以避免在具有固定滚动条的操作系统上出现布局偏移。
如果您不想使用此功能,您可以排除rootscrollgutter
.
<div class="$$drawer"> <input id="my-drawer" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content"> <!-- Page content here --> <label for="my-drawer" class="$$btn $$btn-primary $$drawer-button">Open drawer</label> </div> <div class="$$drawer-side"> <label for="my-drawer" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer">
<input id="my-drawer" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content">
<!-- Page content here -->
<label for="my-drawer" class="$$btn $$btn-primary $$drawer-button">Open drawer</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>
<div class="$$drawer"> <input id="my-drawer" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content"> <!-- Page content here --> <label for="my-drawer" class="$$btn $$btn-primary $$drawer-button">Open drawer</label> </div> <div class="$$drawer-side"> <label for="my-drawer" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer">
<input id="my-drawer" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content">
<!-- Page content here -->
<label for="my-drawer" class="$$btn $$btn-primary $$drawer-button">Open drawer</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>
<div class="$$drawer lg:$$drawer-open"> <input id="my-drawer-2" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content flex flex-col items-center justify-center"> <!-- Page content here --> <label for="my-drawer-2" class="$$btn $$btn-primary $$drawer-button lg:hidden"> Open drawer </label> </div> <div class="$$drawer-side"> <label for="my-drawer-2" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer lg:$$drawer-open">
<input id="my-drawer-2" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content flex flex-col items-center justify-center">
<!-- Page content here -->
<label for="my-drawer-2" class="$$btn $$btn-primary $$drawer-button lg:hidden">
Open drawer
</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer-2" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>
<div class="$$drawer lg:$$drawer-open"> <input id="my-drawer-2" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content flex flex-col items-center justify-center"> <!-- Page content here --> <label for="my-drawer-2" class="$$btn $$btn-primary $$drawer-button lg:hidden"> Open drawer </label> </div> <div class="$$drawer-side"> <label for="my-drawer-2" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer lg:$$drawer-open">
<input id="my-drawer-2" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content flex flex-col items-center justify-center">
<!-- Page content here -->
<label for="my-drawer-2" class="$$btn $$btn-primary $$drawer-button lg:hidden">
Open drawer
</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer-2" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>
<div class="$$drawer $$drawer-end"> <input id="my-drawer-4" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content"> <!-- Page content here --> <label for="my-drawer-4" class="$$drawer-button $$btn $$btn-primary">Open drawer</label> </div> <div class="$$drawer-side"> <label for="my-drawer-4" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer $$drawer-end">
<input id="my-drawer-4" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content">
<!-- Page content here -->
<label for="my-drawer-4" class="$$drawer-button $$btn $$btn-primary">Open drawer</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer-4" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>
<div class="$$drawer $$drawer-end"> <input id="my-drawer-4" type="checkbox" class="$$drawer-toggle" /> <div class="$$drawer-content"> <!-- Page content here --> <label for="my-drawer-4" class="$$drawer-button $$btn $$btn-primary">Open drawer</label> </div> <div class="$$drawer-side"> <label for="my-drawer-4" aria-label="close sidebar" class="$$drawer-overlay"></label> <ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4"> <!-- Sidebar content here --> <li><a>Sidebar Item 1</a></li> <li><a>Sidebar Item 2</a></li> </ul> </div> </div>
<div class="$$drawer $$drawer-end">
<input id="my-drawer-4" type="checkbox" class="$$drawer-toggle" />
<div class="$$drawer-content">
<!-- Page content here -->
<label for="my-drawer-4" class="$$drawer-button $$btn $$btn-primary">Open drawer</label>
</div>
<div class="$$drawer-side">
<label for="my-drawer-4" aria-label="close sidebar" class="$$drawer-overlay"></label>
<ul class="$$menu bg-base-200 text-base-content min-h-full w-80 p-4">
<!-- Sidebar content here -->
<li><a>Sidebar Item 1</a></li>
<li><a>Sidebar Item 2</a></li>
</ul>
</div>
</div>