&l…">
当前位置:首页 > CSS

css怎么制作课表

2026-04-02 17:43:14CSS

使用HTML和CSS制作课表

制作课表可以通过HTML定义结构,CSS进行样式设计。以下是一个简单的实现方法:

HTML部分:

<div class="timetable">
  <div class="header">
    <div class="cell">时间</div>
    <div class="cell">星期一</div>
    <div class="cell">星期二</div>
    <div class="cell">星期三</div>
    <div class="cell">星期四</div>
    <div class="cell">星期五</div>
  </div>
  <div class="row">
    <div class="cell time">8:00-9:30</div>
    <div class="cell course math">数学</div>
    <div class="cell course english">英语</div>
    <div class="cell course physics">物理</div>
    <div class="cell course chemistry">化学</div>
    <div class="cell course history">历史</div>
  </div>
  <!-- 更多时间段行 -->
</div>

CSS部分:

css怎么制作课表

.timetable {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  border: 1px solid #ddd;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

.header {
  display: contents;
  font-weight: bold;
  background-color: #f5f5f5;
}

.row {
  display: contents;
}

.cell {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: center;
}

.time {
  background-color: #f5f5f5;
  font-weight: bold;
}

.course {
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.math { background-color: #ffdddd; }
.english { background-color: #ddffdd; }
.physics { background-color: #ddddff; }
.chemistry { background-color: #ffffdd; }
.history { background-color: #ffddff; }

响应式课表设计

针对移动设备,可以调整课表的显示方式:

@media (max-width: 600px) {
  .timetable {
    grid-template-columns: 1fr;
  }

  .header, .row {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
  }
}

添加交互效果

可以使用CSS为课表添加悬停效果:

css怎么制作课表

.course:hover {
  transform: scale(1.05);
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  z-index: 1;
  transition: all 0.3s ease;
}

使用CSS Grid布局复杂课表

对于更复杂的课表布局,可以充分利用CSS Grid:

.timetable {
  display: grid;
  grid-template-columns: 100px repeat(5, 1fr);
  grid-auto-rows: minmax(80px, auto);
  gap: 2px;
  background-color: #ddd;
}

.header {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 100px repeat(5, 1fr);
}

.time {
  position: sticky;
  left: 0;
  z-index: 2;
}

使用Flexbox替代方案

如果不使用Grid布局,Flexbox也是可行的选择:

.timetable {
  display: flex;
  flex-direction: column;
}

.header, .row {
  display: flex;
}

.cell {
  flex: 1;
  min-width: 0;
}

.time {
  flex: 0 0 100px;
}

以上方法可以根据具体需求进行调整和组合,创建出符合需求的课表样式。

标签: 课表css
分享给朋友:

相关文章

用css制作表格

用css制作表格

使用CSS制作表格 CSS可以用来样式化HTML表格,使其更具视觉吸引力和功能性。以下是几种常见的方法: 基础表格样式 通过CSS可以调整表格的边框、间距和颜色: <table>…

css 边框制作

css 边框制作

基础边框设置 使用 border 属性可快速设置边框样式、宽度和颜色: .element { border: 1px solid #000; /* 宽度 | 样式 | 颜色 */ } 样式选…

css sprites制作

css sprites制作

CSS Sprites 制作方法 CSS Sprites 是一种将多个小图标或图片合并成一张大图的技术,通过减少 HTTP 请求提升网页加载性能。 准备工作 需要将多个小图标或图片合并为一张大图,可…

css制作登录界面

css制作登录界面

使用CSS制作登录界面 登录界面是网站常见的功能模块,通过CSS可以轻松实现美观且响应式的设计。以下是实现登录界面的关键步骤和代码示例。 HTML结构 基础的HTML结构包含表单、输入框和按钮等元素…

纯css制作tab菜单

纯css制作tab菜单

纯CSS制作Tab菜单的方法 使用radio input控制Tab切换 通过<input type="radio">和<label>元素配合:checked伪类实现Tab切换效…

css如何制作三角形

css如何制作三角形

使用边框属性制作三角形 通过设置元素的宽度和高度为0,利用边框属性可以创建三角形。边框的交汇处会形成斜边,通过设置不同边的颜色和透明度实现三角形效果。 .triangle { width: 0;…