当前位置: 首页 > 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.lryc.cn/news/625877.html

相关文章:

  • 2025年6月中国电子学会青少年软件编程(图形化)等级考试试卷(一级)答案 + 解析
  • LangChain —多模态 / 多源上下文管理
  • 云原生俱乐部-mysql知识点归纳(3)
  • 【论文阅读】SIMBA: single-cell embedding along with features(1)
  • 《Dual Prompt Personalized Federated Learning in Foundation Models》——论文阅读
  • 自然语言处理(NLP)技术的发展历史
  • 【QT入门到晋级】进程间通信(IPC)-socket(包含性能优化案例)
  • Python爬虫实战:研究ICP-Checker,构建ICP 备案信息自动查询系统
  • GIS在海洋大数据的应用
  • 数据结构:深入解析常见数据结构及其特性
  • 3 创建wordpress网站
  • 【实时Linux实战系列】实时大数据处理与分析
  • 【数据库】通过‌phpMyAdmin‌管理Mysql数据
  • 计算机毕设推荐:痴呆症预测可视化系统Hadoop+Spark+Vue技术栈详解
  • [Polly智能维护网络] 网络重试原理 | 弹性策略
  • 图像采集卡与工业相机:机器视觉“双剑合璧”的效能解析
  • CMake进阶: CMake Modules---简化CMake配置的利器
  • 小迪安全v2023学习笔记(六十六讲)—— Java安全SQL注入SSTISPELXXE
  • Webpack 5 配置完全指南:从入门到精通
  • 云手机矩阵:重构企业云办公架构的技术路径与实践落地
  • HarmonyOS 中的 泛型类和泛型接口
  • oc-mirror plugin v2 错误could not establish the destination for the release i
  • 力扣hot100:三数之和(排序 + 双指针法)(15)
  • 缓存-变更事件捕捉、更新策略、本地缓存和热key问题
  • 数据迁移:如何从MySQL数据库高效迁移到Neo4j图形数据库
  • 在CentOS系统中查询已删除但仍占用磁盘空间的文件
  • Docker 快速下载Neo4j 方法记录
  • 生信分析自学攻略 | R语言数据类型和数据结构
  • PG靶机 - Pebbles
  • 使用java做出minecraft2.0版本