微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css怎么做对比折线图

CSS是一种用于美化网站的语言,可以通过它实现各种效果包括对比折线图。下面将介绍具体实现过程。

html:
<div class="chart">
  <div class="x-axis">
    <span>1</span>
    <span>2</span>
    <span>3</span>
    <span>4</span>
  </div>
  <div class="y-axis">
    <span>50</span>
    <span>40</span>
    <span>30</span>
    <span>20</span>
    <span>10</span>
    <span>0</span>
  </div>
  <div class="line-chart">
    <div class="line blue">
      <div class="point"></div>
      <div class="point"></div>
      <div class="point"></div>
      <div class="point"></div>
    </div>
    <div class="line orange">
      <div class="point"></div>
      <div class="point"></div>
      <div class="point"></div>
      <div class="point"></div>
    </div>
  </div>
</div>

css:
.chart {
  width: 400px;
  border: 1px solid #ccc;
  position: relative;
}

.x-axis {
  display: flex;
  justify-content: space-between;
  position: absolute;
  bottom: -20px;
  width: 100%;
}

.x-axis span {
  font-size: 12px;
}

.y-axis {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
}

.y-axis span {
  font-size: 12px;
}

.line-chart {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  position: relative;
}

.line {
  position: absolute;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  left: 10px;
}

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

.blue .point {
  background-color: blue;
  border-color: blue;
}

.orange .point {
  background-color: orange;
  border-color: orange;
}

css怎么做对比折线图

以上是对比折线图的HTML和CSS实现代码,通过这段代码实现了一个最基本的对比折线图。其中,在x轴和y轴上各加入了数据,通过.y-axis和.x-axis实现。在.line-chart类中,采用了flex布局,自适应调整宽度和高度的大小,这样就不需要固定宽度和高度了。折线图线条采用.absolute定位,再通过.left属性确定其位置。而数据点则可以采用相对定位,再通过.transform将坐标位置移到正确的位置,并加上.circle的小球样式。

通过以上实现过程,我们可以发现,使用CSS制作对比折线图可以非常方便。可以根据具体需求,增加修改CSS代码,实现更多的效果

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。