SuperAPI AI 工具集

ux-css-layout

前端与建站

查看项目

更新于 10-16 00:32

技能介绍

本技能整理 VS Code 的 CSS 与布局约定。用途是为编辑器界面编写符合项目规范的样式与布局代码。

主要能力:

  1. 文件组织:CSS 与 TypeScript 组件同目录存放,在 TS 中直接 import,如 import './media/myFeature.css';Workbench 级全局样式放 src/vs/workbench/browser/media/。
  2. 类命名:主要组件使用 monaco- 前缀(.monaco-workbench、.monaco-split-view2、.monaco-scrollable-element);修饰类如 .vertical/.horizontal;状态类如 .visible/.focused/.active/.highlight;特性类用无前缀 kebab-case。
  3. 标准尺寸:部件标题高 35px,标题水平内边距 8px,标签内边距 12px,操作区 5px,图标 16px,正文字号 13px,行高 1.4em;优先使用设计系统尺寸令牌。
  4. 布局:SplitView(src/vs/base/browser/ui/splitview/splitview.ts)用于可拖拽切分的视图,视图实现 IView 接口声明 minimumSize/maximumSize,用 LayoutPriority 与 snap 控制收缩与吸附;Grid(grid.ts)用于二维布局。
  5. 滚动:SmoothScrollableElement、DomScrollableElement、ScrollableElement 三种,内容变化后需调用 scanDomNode()。
  6. 响应式:不使用媒体查询,而用基于约束的 IView 最小/最大尺寸、LayoutPriority 与 ResizeObserver 分配空间。
  7. 文本溢出:可截断标签须同时设置 overflow: hidden、white-space: nowrap、text-overflow: ellipsis;flex 子项需加 min-width: 0 才能生效;固定元素用 flex-shrink: 0;截断文本应提供悬停提示显示完整内容。
  8. 设计令牌:间距、圆角、字号字重、codicon 尺寸与描边优先使用 --vscode-* 变量,新令牌需同步注册到 baseSizes.ts 与 stylelint 已知变量 JSON。

限制:新增或修改 CSS 不得引入新的 !important,须通过选择器特异性解决冲突(焦点轮廓抑制为窄例外);不使用 CSS 媒体查询;codicon 尺寸仅 16px 或 12px;不依赖固定像素宽度承载可本地化文本。资料未提供安装命令与收费信息。