当前位置:首页 > 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制作表格

css制作表格

使用HTML和CSS创建表格 HTML中的<table>元素用于创建表格,结合CSS可以调整样式。以下是一个基础示例: <table> <tr> &l…

css制作六边形

css制作六边形

使用CSS创建六边形的方法 通过CSS的clip-path属性可以轻松实现六边形效果。以下是一个基础示例: .hexagon { width: 100px; height: 55px;…

css 制作石头

css 制作石头

使用CSS制作石头效果 通过CSS的border-radius、box-shadow和background属性可以模拟石头的自然外观。以下是一个简单实现: <div class="stone"…

如何制作css

如何制作css

创建CSS文件 新建一个纯文本文件,将文件扩展名改为.css,例如style.css。确保文件名不含空格或特殊字符,使用连字符或下划线分隔单词。 编写CSS语法 CSS规则由选择器和声明块组成。选择…

如何制作css雪碧图

如何制作css雪碧图

什么是CSS雪碧图 CSS雪碧图(CSS Sprite)是一种将多个小图标或背景图像合并到一张大图中的技术,通过CSS的background-position属性控制显示特定部分。这种技术可以减少HT…

网页制作 css

网页制作 css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成。选择器指向需要样式化的HTML元素,声明块包含一个或多个用分号分隔的声明,每个声明由属性和值组成。 选择…