当前位置:首页 > CSS

css 制作图表

2026-04-02 15:16:12CSS

CSS 制作图表的方法

CSS 可以用来制作多种类型的图表,包括条形图、饼图、折线图等。以下是几种常见的实现方式:

条形图

使用 div 元素和 CSS 的 height 属性可以轻松创建条形图。通过调整高度和背景色,可以直观地展示数据。

<div class="bar-chart">
  <div class="bar" style="height: 40%; background-color: #3498db;"></div>
  <div class="bar" style="height: 70%; background-color: #e74c3c;"></div>
  <div class="bar" style="height: 30%; background-color: #2ecc71;"></div>
</div>
.bar-chart {
  display: flex;
  height: 200px;
  align-items: flex-end;
  gap: 10px;
}

.bar {
  width: 50px;
  transition: height 0.3s ease;
}

饼图

使用 CSS 的 conic-gradient 可以创建饼图。通过设置不同颜色的角度来展示比例。

<div class="pie-chart"></div>
.pie-chart {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #3498db 0% 40%,
    #e74c3c 40% 70%,
    #2ecc71 70% 100%
  );
}

折线图

折线图可以通过 SVG 结合 CSS 实现,但纯 CSS 也可以使用伪元素和 transform 属性模拟。

<div class="line-chart">
  <div class="point" style="left: 10%; bottom: 20%;"></div>
  <div class="point" style="left: 30%; bottom: 50%;"></div>
  <div class="point" style="left: 50%; bottom: 30%;"></div>
  <div class="point" style="left: 70%; bottom: 70%;"></div>
  <div class="point" style="left: 90%; bottom: 40%;"></div>
</div>
.line-chart {
  position: relative;
  height: 200px;
  width: 100%;
  border-bottom: 2px solid #333;
  border-left: 2px solid #333;
}

.point {
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: #e74c3c;
  border-radius: 50%;
  transform: translate(-50%, 50%);
}

.point::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1000px;
  height: 2px;
  background-color: #3498db;
  transform-origin: left;
}

动画效果

为图表添加动画效果可以提升用户体验。使用 transition@keyframes 实现平滑过渡。

css 制作图表

.bar {
  transition: height 0.5s ease;
}

@keyframes grow {
  from { height: 0%; }
  to { height: var(--target-height); }
}

.bar {
  animation: grow 1s forwards;
}

注意事项

  • 纯 CSS 图表适合简单数据展示,复杂需求可能需要结合 JavaScript 或库(如 Chart.js)。
  • 确保图表在不同设备上响应式适配,使用相对单位(如 %vw)。
  • 考虑无障碍访问,为图表添加 aria-label 或隐藏的文本描述。

通过以上方法,可以灵活地用 CSS 实现多种图表效果。

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

相关文章

css div 制作导航菜单

css div 制作导航菜单

基本导航菜单结构 使用HTML创建一个简单的导航菜单结构,通常使用<ul>和li>列表实现。每个菜单项用<a>标签包裹以实现链接功能。 <div class="n…

css导航制作ppt

css导航制作ppt

CSS导航制作PPT的方法 使用CSS制作导航菜单,并将其应用于PPT演示中,可以通过以下方法实现: 设计导航菜单结构 在HTML中创建导航菜单的基本结构,通常使用<ul>和<li…

js实现图表

js实现图表

在JavaScript中实现图表通常使用流行的图表库,以下是几种常见的方法和工具: 使用Chart.js Chart.js是一个简单灵活的库,适合快速生成响应式图表。安装方式包括CDN引入或npm安…

css制作表格

css制作表格

CSS 制作表格的方法 使用 CSS 可以灵活地创建和样式化表格,以下是几种常见的方法: 使用 HTML 表格标签结合 CSS 样式 通过 HTML 的 <table>、<tr&g…

css制作表单

css制作表单

创建基本表单结构 使用HTML的<form>标签作为表单容器,内部包含输入字段、标签和提交按钮。表单元素通常需要<label>关联以提高可访问性。 <form>…

css页脚制作

css页脚制作

CSS页脚制作方法 基础页脚结构 在HTML中创建页脚的基本结构,使用<footer>标签包裹内容: <footer> <div class="footer-con…