根据数据生成柱形图效果

273 阅读1分钟

1.定义一个空数组arr,遍历四次弹窗将结果遍历到数组里;

2.建一个大盒子里面放一个小盒子;

3.大盒子给左,下边框;

4.给大盒子和小盒子设置flex布局,让他们平均分开;

5.再来一次遍历将arr数组的数据赋值给小盒子的 height,span

<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=\, initial-scale=1.0">
  <title>Document</title>


  <style>
    * {
        margin: 0;
        padding: 0;
    }

    .box {
        display: flex;
        width: 700px;
        height: 300px;
        border-left: 1px solid pink;
        border-bottom: 1px solid pink;
        margin: 50px auto;
        justify-content: space-around;
        align-items: flex-end;
        text-align: center;
    }

    .box>div {
        display: flex;
        width: 50px;
        background-color: pink;
        flex-direction: column;
        justify-content: space-between;
    }

    .box div span {

        margin-top: -20px;
    }

    .box div h4 {
        margin-bottom: -35px;
        width: 70px;
        margin-left: -10px;
    }
</style>
</head>
<body>
  
  <script>
    // 1.四次弹窗结果
    let arr = []
    for(let i = 1; i <= 4; i++ ){
      arr.push(prompt(`请输入第${i}季度`))
    
    }
    console.log(arr);

    //consale.log(arr)
    //2.把输入的数据填充到盒子里  跟数组有关系
    //盒子开始
    document.write(`<div class="box">`)
      for(let i = 0; i < arr.length; i++){
        document.write(`
        <div style="height: ${arr[i]}px;">
          <span>${arr[i]}</span>
          <h4>第${i + 1}季度</h4>
          </div>
        `)
      }
      // 盒子中间的数据
      //盒子结束
      document.write(`</div>`)
  </script>
</body>
</html>

运行结果:

image.png

image.png

image.png

image.png

image.png