Vue 纯css方式实现自定义进度条组件

组件源码

javascript 复制代码
<template>
    <div>
        <div class="bar" :style="{'--precent': precent}"></div>
    </div>
  </template>
   
  <script>
  export default {
      name: 'ProgressBar',
      props: {
        precent:{},
      },
      data() {
          return {
          }
      },
      methods: {
        
      }
  }
  </script>

<style scoped>

  .bar{
    height: 14px;
    width: 100%;
    font-size: 10px;
    margin-top: 5px;
    background-color: #f5f5f5;
  }
  .bar::before{
    display: block;
    counter-reset: progress var(--precent); 
    content: '';
    width: calc(1% * var(--precent));
    color: #fff;
    height: 14px;
    background-color: #2486ff;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
  }


</style>
  

调用方式(precent表示占比,这里的50表示是50%):

javascript 复制代码
          <ProgressBar :precent="'50'"></ProgressBar>

实现效果:

相关推荐
2501_942818911 天前
AI 多模态全栈项目实战:Vue3 + Node 打造 TTS+ASR 全家桶!
vue.js·人工智能·node.js
Komorebi゛1 天前
【Vue3+Element Plus】el-dialog弹窗点击遮罩层无法关闭弹窗问题记录
前端·vue.js·elementui
vim怎么退出1 天前
一次线上样式问题复盘:当你钻进 CSS 牛角尖时,问题可能根本不在 CSS
前端·css
echo_e1 天前
手搓前端虚拟列表
前端
用泥种荷花1 天前
【LangChain学习笔记】创建智能体
前端
再吃一根胡萝卜1 天前
在 Ant Design Vue 的 a-table 中将特定数据行固定在底部
前端
掘金安东尼1 天前
Vercel:我们为 React2Shell 发起了一项价值 100 万美元的黑客挑战
前端·javascript·github
掘金安东尼1 天前
浏览器处理Base64数据的速度有多快?
前端·javascript·github
掘金安东尼1 天前
为不同场景设计多样化的页面过渡动画
前端·javascript·github