当前位置:首页 > CSS

css图表制作

2026-02-12 22:49:52CSS

CSS图表制作方法

CSS图表可以通过纯CSS或结合少量JavaScript实现,适用于数据可视化需求。以下是几种常见类型的实现方法:

柱状图

使用HTML的<div>元素和CSS的height属性创建柱状图:

<div class="bar-chart">
  <div class="bar" style="height: 60%;" data-value="60"></div>
  <div class="bar" style="height: 30%;" data-value="30"></div>
</div>
.bar-chart {
  display: flex;
  height: 200px;
  align-items: flex-end;
}
.bar {
  width: 40px;
  margin-right: 10px;
  background-color: #4285f4;
  transition: height 0.3s ease;
}

饼图

利用CSS的conic-gradient实现饼图:

.pie-chart {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: conic-gradient(
    #4285f4 0% 60%,
    #ea4335 60% 85%,
    #fbbc05 85% 100%
  );
}

折线图

通过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>
.line-chart {
  position: relative;
  height: 200px;
  border-bottom: 1px solid #ccc;
}
.point {
  position: absolute;
  width: 8px;
  height: 8px;
  background: #34a853;
  border-radius: 50%;
}
.point::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  height: 1px;
  background: #34a853;
}

动画效果

为图表添加交互动画:

.bar:hover {
  opacity: 0.8;
  transform: scaleY(1.05);
}
@keyframes grow {
  from { height: 0; }
  to { height: var(--target-height); }
}
.bar {
  animation: grow 0.5s ease forwards;
}

响应式设计

使用CSS变量和媒体查询确保图表适配不同屏幕:

:root {
  --chart-height: 200px;
}
@media (max-width: 600px) {
  :root {
    --chart-height: 150px;
  }
}
.bar-chart {
  height: var(--chart-height);
}

高级技巧

  • 使用CSS变量动态控制图表数据
  • 结合SVG实现更复杂的图表类型
  • 通过CSS预处理器(如Sass)生成重复样式
  • 使用clip-path属性创建特殊形状

这些方法均无需外部库,适合轻量级数据展示需求。对于复杂场景,建议结合JavaScript处理数据绑定和交互逻辑。

css图表制作

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

相关文章

css 制作三角形

css 制作三角形

使用 CSS 制作三角形的方法 边框法(Border Method) 通过设置元素的宽高为0,并利用边框的透明属性来创建三角形。这是最常见且兼容性最好的方法。 向上三角形 .triangl…

纯css制作幻灯片

纯css制作幻灯片

纯CSS制作幻灯片的方法 使用纯CSS制作幻灯片主要依赖CSS动画和关键帧(@keyframes)技术,结合HTML结构实现轮播效果。以下是两种常见的实现方式: 方法一:使用CSS动画和无限循环 H…

css如何制作三角形

css如何制作三角形

使用 border 属性制作三角形 通过设置元素的 border 属性,利用边框的透明特性可以创建三角形。将一个元素的宽度和高度设为 0,然后通过设置不同方向的边框宽度和颜色来实现。 .trian…

css制作滑动页面

css制作滑动页面

使用CSS实现滑动页面 通过CSS可以实现多种滑动页面效果,包括横向滑动、纵向滑动以及视差滚动等。以下是几种常见的实现方法: 横向滑动效果 横向滑动通常用于展示一组卡片或图片,可以通过CSS的ove…

div和css制作

div和css制作

使用 div 和 CSS 制作网页布局 HTML 结构 通过 div 标签划分页面区域,例如头部、主体、侧边栏和页脚: <div class="container"> <di…

css制作炫酷按钮

css制作炫酷按钮

渐变背景按钮 使用CSS的linear-gradient属性创建渐变背景效果,结合阴影和过渡动画增强视觉冲击力。按钮悬停时通过改变渐变角度或颜色实现动态效果。 .gradient-btn {…