当前位置:首页 > CSS

css制作日历

2026-02-26 21:24:13CSS

使用CSS制作日历的基本方法

日历的布局可以通过CSS Grid或Flexbox实现。以下是一个简单的日历结构示例:

<div class="calendar">
  <div class="header">2023年10月</div>
  <div class="weekdays">
    <div>日</div>
    <div>一</div>
    <div>二</div>
    <div>三</div>
    <div>四</div>
    <div>五</div>
    <div>六</div>
  </div>
  <div class="days">
    <!-- 日期单元格 -->
    <div>1</div>
    <div>2</div>
    <!-- 更多日期... -->
  </div>
</div>

CSS样式设置

日历容器使用Grid布局:

.calendar {
  width: 300px;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  font-family: Arial, sans-serif;
}

星期标题行样式:

css制作日历

.weekdays {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  background: #f5f5f5;
  text-align: center;
  font-weight: bold;
  padding: 8px 0;
}

日期单元格布局:

.days {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-gap: 1px;
  background: #eee;
}

.days div {
  padding: 10px;
  text-align: center;
  background: white;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

添加交互效果

悬停效果:

css制作日历

.days div:hover {
  background: #e6f7ff;
  cursor: pointer;
}

当前日期高亮:

.days .today {
  background: #1890ff;
  color: white;
  border-radius: 50%;
}

响应式设计

适应不同屏幕尺寸:

@media (max-width: 600px) {
  .calendar {
    width: 100%;
  }

  .days div {
    padding: 5px;
    min-height: 30px;
  }
}

完整示例代码

结合HTML和CSS的完整日历实现:

<!DOCTYPE html>
<html>
<head>
<style>
.calendar {
  width: 300px;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  font-family: Arial, sans-serif;
}

.header {
  background: #1890ff;
  color: white;
  text-align: center;
  padding: 10px;
  font-size: 18px;
}

.weekdays {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  background: #f5f5f5;
  text-align: center;
  font-weight: bold;
  padding: 8px 0;
}

.days {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-gap: 1px;
  background: #eee;
}

.days div {
  padding: 10px;
  text-align: center;
  background: white;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.days div:hover {
  background: #e6f7ff;
  cursor: pointer;
}

.days .today {
  background: #1890ff;
  color: white;
  border-radius: 50%;
}
</style>
</head>
<body>

<div class="calendar">
  <div class="header">2023年10月</div>
  <div class="weekdays">
    <div>日</div>
    <div>一</div>
    <div>二</div>
    <div>三</div>
    <div>四</div>
    <div>五</div>
    <div>六</div>
  </div>
  <div class="days">
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>
    <div>6</div>
    <div>7</div>
    <!-- 更多日期... -->
  </div>
</div>

</body>
</html>

标签: 日历css
分享给朋友:

相关文章

css简历制作

css简历制作

使用CSS制作简历的基本方法 选择简洁的布局结构,单列或双列布局适合大多数简历。使用display: flex或display: grid实现响应式设计,确保在不同设备上显示良好。 字体选择上,标题…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear…

css制作响应网页

css制作响应网页

响应式网页设计基础 使用CSS制作响应式网页的核心是让页面能够根据不同设备的屏幕尺寸自动调整布局和样式。主要通过媒体查询(Media Queries)、弹性布局(Flexbox)和网格布局(Grid)…

制作css导航栏实验

制作css导航栏实验

实验目标 通过CSS实现一个水平导航栏,包含悬停效果和响应式设计。 基本HTML结构 创建一个简单的导航栏HTML结构,使用<ul>和<li>标签组织导航项:…

制作css表格

制作css表格

基础CSS表格结构 使用HTML的<table>标签创建表格骨架,搭配CSS控制样式。以下是一个基础示例: <table class="styled-table"> &…

css制作栅格

css制作栅格

CSS 栅格布局基础 CSS Grid 布局是一种强大的二维布局系统,允许开发者通过行和列来设计复杂的网页布局。栅格系统由容器(grid container)和项目(grid items)组成。 定…