# 日历

- 页面: https://jiguang132.com/zh/resources/daisyui/docs/calendar
- 资源: daisyUI (https://jiguang132.com/zh/resources/daisyui.md)
- 全部指南: https://jiguang132.com/zh/resources/daisyui/docs.md

daisyUI 提供日历样式，不提供统一日历 API。分别选择 Cally、React Day Picker 或 Vanilla Calendar，安装对应依赖并保留其选择事件；检查语言、日期边界、时区和实例销毁。

## 安装与初始化

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
```

这是原生 CSS 插件，不是 React 组件导入。先用 Tailwind 4 和 daisyUI 插件生成并加载样式，再复制示例。完整步骤见随附安装指南；不要盲目覆盖宿主的 React 或 Tailwind 版本。

```css
@import "tailwindcss";
@plugin "daisyui" { themes: light --default, dark --prefersdark; }
```

## 源码与真实交互

源码文件保留原始代码块、注释和演示文字。$$ 类名前缀占位符需按你的插件配置处理：未配置前缀时，$$btn 改为 btn。复制所选示例列出的全部源文件，按框架组合 HTML、CSS、JavaScript 并保留原生事件。预览的已审查事件适配器不是后端，也不会随 npm 命令自动安装到你的应用。

## 首个完整示例

```html
<!--
* Import Cally web component from CDN
<script type="module" src="https://unpkg.com/cally"></script>

* Or install as a dependency:
npm i cally
* and import it in JS
import "cally";
-->

<calendar-date class="$$cally bg-base-100 border border-base-300 shadow-lg rounded-box">
  <svg aria-label="Previous" class="fill-current size-4" slot="previous" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M15.75 19.5 8.25 12l7.5-7.5"></path></svg>
  <svg aria-label="Next" class="fill-current size-4" slot="next" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="m8.25 4.5 7.5 7.5-7.5 7.5"></path></svg>
  <calendar-month></calendar-month>
</calendar-date>
```

## 全部可运行示例

### Cally 日历

`calendar-1`

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
npm install cally@0.9.2
```

- `examples/calendar/block-0.html`

### Cally 日期选择器

`calendar-2`

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
npm install cally@0.9.2
```

- `examples/calendar/block-1.html`

### React Day Picker 日历

`calendar-3`

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
npm install react@19.2.8 react-dom@19.2.8 react-day-picker@9.14.0
```

- `examples/calendar/block-2.txt`
- `examples/calendar/block-3.jsx`

### Vanilla Calendar Pro 日历

`calendar-4`

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
npm install vanilla-calendar-pro@3.4.0
```

- `examples/calendar/block-4.txt`
- `examples/calendar/block-5.html`
- `examples/calendar/block-6.js`

### Vanilla Calendar Pro CDN 示例（预览使用本地依赖）

`calendar-5`

```bash
npm install -D tailwindcss@4.2.1 @tailwindcss/cli@4.2.1 daisyui@5.7.47
npm install vanilla-calendar-pro@3.4.0
```

- `examples/calendar/block-7.html`

三种日历是独立方案，API 不能混用，只安装选中的一种。React 示例先检查 peer 版本；Cally 先导入模块再渲染自定义元素；Vanilla Calendar 明确初始化并销毁。上游 CDN 示例作为原始源码证据保留，JGuang 预览使用固定版本的本地 npm 模块替代 CDN 运行时。

## 主题、无障碍与验证

使用原生 data-theme 主题边界。验证键盘、标签、可见焦点、适用的禁用／错误状态、深浅色、移动端和减少动画。检查目标浏览器的 dialog、popover 和 CSS 特性支持；类名不会补齐未实现的 JavaScript 或业务服务。卸载时清理计时器和第三方实例；复制命令不等于安装成功。

## 来源与许可证

https://github.com/saadeghi/daisyui/tree/c51f50130ffefb293179e6fce8de7ad3f307e45f

本页是 JGuang 编写的双语实用说明，不声称全文翻译上游文档。原始 Markdown、代码和 CSS 保留在源码查看器。保留 MIT 与各依赖独立声明；保守附上整个原生环境的许可，包括构建工具，但不分发构建二进制或远程演示图片。实际项目请替换为有使用权的素材，不包含商业模板。

---

JGuang 全部资源索引: https://jiguang132.com/llms.txt
