You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用CSS实现文本旁的装饰线条效果?

我不清楚该如何描述这种效果,因此附上截图供参考:
效果示例截图

你截图里的是代码编辑器的悬浮代码提示效果,鼠标悬停在变量、函数等代码节点上时,会弹出带语法高亮的定义、类型、说明信息。
不同场景下的实现方案如下:

VS Code扩展开发场景

直接调用官方提供的Hover Provider API即可实现,返回的浮层内容支持带语法标注的Markdown代码块,会自动渲染高亮效果:

import * as vscode from 'vscode';

export function activate(context: vscode.ExtensionContext) {
  // 注册对应语言的悬浮提示提供者
  const hoverDisposable = vscode.languages.registerHoverProvider(
    // 这里替换为你要适配的语言ID,比如javascript、python
    'javascript',
    {
      provideHover(document: vscode.TextDocument, position: vscode.Position) {
        // 你可以在这里先解析当前光标位置的代码内容,匹配对应的提示信息
        const hoverContent = new vscode.MarkdownString();
        // 追加带语法高亮的代码块,第二个参数指定语言ID
        hoverContent.appendCodeblock(`function getUserInfo(id: number): User {
  return { id, name: '张三', age: 20 }
}`, 'typescript');
        // 追加普通说明文本
        hoverContent.appendMarkdown('\n获取指定ID的用户基础信息,返回值包含id、姓名、年龄三个字段。');
        return new vscode.Hover(hoverContent);
      }
    }
  );
  context.subscriptions.push(hoverDisposable);
}

普通前端网页实现场景

可以组合两类工具实现:

  • 代码高亮工具:Prism.js、highlight.js,负责给代码片段加上语法高亮样式
  • 浮层定位工具:Floating UI,负责把提示浮层精准定位到悬停位置的旁边

核心逻辑是给页面上的代码节点绑定mouseenter、mouseleave事件,触发悬停时把预定义的代码片段经高亮工具处理后插入浮层,显示在对应位置即可。

内容的提问来源于stack exchange,提问作者user16613329

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 19:24:03