当前位置:首页 > CSS

css制作charts

2026-02-27 09:03:31CSS

使用纯CSS制作图表

纯CSS可以通过伪元素、变形和动画等技术实现简单的图表效果,适用于不需要复杂交互的场景。

条形图 通过调整heightwidth属性控制条形长度,结合:before:after伪元素添加标签:

.bar {
  background-color: #4CAF50;
  height: 20px;
  width: var(--width, 50%);
  transition: width 1s;
}

饼图 利用conic-gradientborder-radius创建圆形分割效果:

.pie-chart {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: conic-gradient(
    #FF6384 0% 30%,
    #36A2EB 30% 70%,
    #FFCE56 70% 100%
  );
}

结合HTML结构的CSS图表

折线图 通过flex布局和border属性连接数据点:

<div class="line-chart">
  <div class="point" style="--y: 30%;"></div>
  <div class="point" style="--y: 60%;"></div>
</div>
.line-chart {
  display: flex;
  align-items: flex-end;
  height: 200px;
}
.point {
  width: 20px;
  height: var(--y);
  background: #333;
  position: relative;
}
.point:not(:last-child)::after {
  content: '';
  position: absolute;
  right: -20px;
  bottom: 0;
  width: 20px;
  border-bottom: 2px solid #333;
}

CSS框架辅助方案

使用CSS变量动态控制 通过JavaScript动态更新CSS变量实现数据绑定:

document.querySelector('.bar').style.setProperty('--width', '75%');

结合Grid布局 创建坐标系背景:

.chart-grid {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  grid-template-rows: repeat(10, 1fr);
  background:
    linear-gradient(to right, #eee 1px, transparent 1px),
    linear-gradient(to bottom, #eee 1px, transparent 1px);
}

动画增强效果

加载动画 为图表元素添加入场效果:

@keyframes grow {
  from { transform: scaleY(0); }
  to { transform: scaleY(1); }
}
.bar {
  animation: grow 0.5s ease-out forwards;
  transform-origin: bottom;
}

悬停交互 显示详细数据提示:

.data-point:hover::after {
  content: attr(data-value);
  position: absolute;
  top: -30px;
  background: rgba(0,0,0,0.8);
  color: white;
  padding: 2px 5px;
  border-radius: 3px;
}

响应式适配

视窗单位适配 使用vwvh单位确保图表缩放:

.chart-container {
  width: 90vw;
  height: 50vh;
}

媒体查询调整 针对不同屏幕尺寸修改布局:

@media (max-width: 600px) {
  .bar-chart {
    flex-direction: column;
  }
}

这些方法展示了如何不依赖JavaScript库创建基础数据可视化效果。复杂项目建议考虑专业图表库,但CSS方案在性能要求高、数据简单的场景下具有优势。

css制作charts

标签: csscharts
分享给朋友:

相关文章

css页脚制作

css页脚制作

CSS页脚制作方法 固定定位页脚 使用position: fixed将页脚固定在页面底部,适用于需要始终显示的页脚。 footer { position: fixed; bottom: 0…

css制作圆

css制作圆

使用CSS制作圆形元素 通过CSS的border-radius属性可以轻松将元素变为圆形。以下是具体实现方法: 基本圆形实现 .circle { width: 100px; height:…

css制作靶子

css制作靶子

CSS 制作靶子 使用 CSS 可以轻松创建一个靶子效果,主要通过嵌套的圆形元素和背景色实现。以下是实现方法: HTML 结构 <div class="target"> <…

风车制作css

风车制作css

风车制作CSS方法 使用CSS创建风车效果可以通过动画和变换属性实现。以下是一个简单的风车旋转动画示例: HTML结构 <div class="windmill"> <…

css网页制作

css网页制作

CSS 网页制作基础 CSS(层叠样式表)用于控制网页的视觉呈现,包括布局、颜色、字体等。以下为关键知识点和实用方法: 基本语法结构 CSS 规则由选择器和声明块组成: 选择器 { 属性: 值…

css制作三角形

css制作三角形

使用边框制作三角形 通过设置元素的宽度和高度为0,并利用边框属性,可以创建不同方向的三角形。例如,要创建一个向下的三角形: .triangle-down { width: 0; heigh…