css-Echarts图表tooltip / label文本过长 超出屏幕边缘或容器范围

1.tooltip 在靠近浏览器边缘时,部分内容看不见

1.1实际场景

文本过长或者Echarts刚好处于可视屏幕边缘导致超出的提示文本被截取。

1.2tooltip解决方法

设置确保tooltip不受父容器限制

复制代码
appendToBody: true,

设置让 tooltip 始终限制在视口内,自动调整位置

复制代码
confine: true, 

完整示例

javascript 复制代码
tooltip: {
  trigger: 'item',
  appendToBody: true,
  confine: true, // 自动防止溢出视口
  formatter: (params) => {
    return `${params.name}<br/>${params.value}人 (${Math.round(params.percent)}%)`
  }
}

2.label文本过长导致显示问题

2.1实际场景

文本过长被容器截取

2.2label解决方法

设置宽度,超出部分省略号显示,以及换行处理

javascript 复制代码
label: {
  show: true,
  position: 'inside', // 或 'outside'
  overflow: 'truncate', // 超出部分用省略号
  width: 80,            // 限制宽度(单位 px)
  formatter: (params: any) => {
    const percent = Math.round(params.percent)
    return `${params.value}人\n${percent}%`
  },
  fontSize: '1.2em',
  color: '#fff',
  lineHeight: 16,
  rich: richConfig
}

或者读取对应的文本进行截取,超过多少字进行截取添加省略号

javascript 复制代码
 label: {
          show: true,
          position: 'outside',
          formatter: (params: any) => {
            const name = params.name.length > 4 ? params.name.substring(0, 4) + '.' : params.name
            return `{text|${name}${''}}{color_${idx}|${params.value}}`
          },
}
相关推荐
LV技术派8 分钟前
【成为 AI Native Builder · 02】什么是 AI Native Builder:一个人 + AI,交付完整闭环
前端·程序员·ai编程
#麻辣小龙虾#27 分钟前
网页布局css中flex+margin的组合布局技巧
开发语言·前端·javascript
叼烟扛炮31 分钟前
Linux 学习笔记(四十五):Web 安全基石——Cookie、Session 与 HTTPS 原理解析
linux·前端·网络·笔记·学习·tcp/ip·安全
环境栈笔记38 分钟前
指纹浏览器安卓怎么用?从运行位置到功能验收,先把三种方案分清
前端·人工智能·后端·自动化
计算机魔术师1 小时前
Anthropic IPO 招股文件披露近 9000 亿美元隐性债务
前端
Hello.Reader1 小时前
Three.js / Cesium 卡顿怎么办?把三维渲染搬到 GPU 服务器
服务器·开发语言·javascript
chi11301 小时前
【无标题】
前端·javascript·python
萝卜兔0082 小时前
PIKACHU_UnsafeFileUpload
javascript·php
IT_陈寒2 小时前
JavaScript实战技巧总结:深挖数组遍历的性能陷阱与实战解法
前端·人工智能·后端
步行cgn2 小时前
为什么既要 web.xml 又要 springmvc.xml?能不能只配一个?
xml·前端·hive