当前位置: 首页 > news >正文

CSS封装大屏自定义组件(标签线)

1. 数据标签线

设计图:

在这里插入图片描述

实现效果:

在这里插入图片描述

封装:
DataLine.vue (单位根据实际项目使用进行转换)

<template><div class="data-line"><span class="dot" aria-hidden="true"></span><span class="line"><span class="line-main" aria-hidden="true"></span><span class="line-fold" aria-hidden="true"></span></span></div>
</template><script>
export default {name: "DataLine"
}
</script><style scoped>
.data-line {display: inline-flex;align-items: center;gap: 0px; /* 圆点与直线之间的间距,可按需调整 */font-size: 0; /* 防止行高影响像素对齐 */
}/* 圆点:5px,实心圆 */
.data-line .dot {display: inline-block;width: 5px;height: 5px;border-radius: 50%;background: #749BED;flex: 0 0 5px;/* 为了在高分屏或缩放下更清晰,可使用 translateY 精细调整 */transform: translateY(0.5px);
}/* 整条线的包装,用于放两段 */
.data-line .line {display: inline-flex;align-items: center;position: relative;height: 1px; /* 基线高度(线条粗细) *//* 禁止被拉伸 */flex: 0 0 auto;
}/* 水平主段:86px 长,厚度 1px */
.data-line .line-main {display: inline-block;width: 86px;        /* 110 - 24 */height: 1px;background: #749BED;flex: 0 0 86px;vertical-align: middle;opacity: 0.5;
}/* 折角段:24px, 旋转 -60deg 使其向右下斜,夹角与主段为 120deg */
.data-line .line-fold {display: inline-block;width: 24px;height: 1px;background: #749BED;transform-origin: left center;transform: rotate(60deg) translateY(-0.5px); /* translateY 用来微调像素对齐 */flex: 0 0 24px;/* 为了避免旋转后影响布局,设置 margin-left 负值把折角的起点与主段衔接 */margin-left: -1px;opacity: 0.5;
}
</style>

调用:

<template><div class="page"><!-- 多次调用 --><DataLine style="position: absolute;left: 0.08rem;top: 0.56rem;"/><DataLine style="position: absolute;right: 0.08rem;top: 0.56rem;transform: rotateY(180deg)"/><DataLine style="position: absolute;left: 0.08rem;bottom: 0.76rem;"/><DataLine style="position: absolute;right: 0.08rem;bottom: 0.76rem;transform: rotateY(180deg)"/></div>
</template><script>
import DataLine from "@/components/DataLine.vue";export default {components: { DataLine }
}
</script>
http://www.dtcms.com/a/338452.html

相关文章:

  • 在python中等号左边的都是对象,在matlab中等号a = 3+2 a就是个变量
  • 关系型数据库与非关系型数据库
  • 用户认证技术
  • 【笔记】扩散模型(一一):Stable Diffusion XL 理论与实现
  • 力扣hot100:盛最多水的容器:双指针法高效求解最大容量问题(11)
  • [NSSCTF 2022 Spring Recruit]rrrsssaaa
  • 94、23种设计模式之工厂方法模式(3/23)
  • 用户认证技术和应用控制技术总结
  • 接口和抽象类的区别(面试回答)
  • leetcode43. 字符串相乘
  • 遗传算法求解冷链路径优化问题matlab代码
  • [ Spring 框架 ] 框架搭建和属性赋值
  • android 实现表格效果
  • 《彩色终端》诗解——ANSI 艺术解(DeepSeek)
  • shell脚本第一阶段
  • Image-to-Music API 接入文档(图片生成音乐)
  • 【新手易混】find 命令中 -perm 选项的知识点
  • ANSI终端色彩控制知识散播(I):语法封装(Python)——《彩色终端》诗评
  • JavaScript 性能优化实战技术指南
  • Coze AI大模型 Docker 部署流程详解
  • 设计模式(四)——责任链模式
  • Spring 三级缓存:破解循环依赖的底层密码
  • 【Python语法基础学习笔记】常量变量运算符函数
  • LeetCode 每日一题 2025/8/11-2025/8/17
  • 【嵌入式基础梳理#12】风压计Modbus框架示例
  • RAG:让AI成为你的知识专家
  • Maven Assembly Plugin 插件使用说明
  • Linux下使用ssh-agent实现集群节点间无免密安装部署
  • 深度学习——R-CNN及其变体
  • 【轨物交流】轨物科技与华为鲲鹏生态深度合作 光伏清洁机器人解决方案获技术认证!