前端UI组件【免费下载链接】fastThe adaptive interface system for modern web experiences.项目地址https://gitcode.com/gh_mirrors/fa/fast点击查看免费下载导读neutralStrokeRecipe是 FAST Framemicrosoft/fast-components自适应色彩系统中用于生成描边Stroke颜色的一组核心配方Recipe设计令牌。它通过算法与调色板组合为组件的 rest静止、hover悬停、active激活、focus聚焦四种交互状态计算出符合对比度要求、且能随明暗主题自适应切换的描边颜色。读完本文你将掌握neutralStrokeRecipe的类型签名、InteractiveColorRecipe.evaluate()的调用方式与返回值结构理解它与neutralStrokeRest、neutralStrokeHover、neutralStrokeActive、neutralStrokeFocus及各 Delta 令牌之间的协作关系并能在自己的组件样式设计中正确使用或覆盖这一配方。一、API 概览类型签名与在 fast-components 中的位置neutralStrokeRecipe的官方 API 文档sites/website/src/docs/1.x/api/fast-components.neutralstrokerecipe.md给出的签名如下neutralStrokeRecipe: DesignTokenInteractiveColorRecipe它隶属于microsoft/fast-components包导出的 Design Token 体系。在同包的模块索引文档sites/website/src/docs/1.x/api/fast-components.md中与之紧密相关的公开变量还包括neutralStrokeRest类型为CSSDesignTokenSwatch静止态描边色neutralStrokeHover悬停态描边色neutralStrokeActive激活态描边色neutralStrokeFocus聚焦态描边色neutralStrokeRestDelta/neutralStrokeHoverDelta/neutralStrokeActiveDelta/neutralStrokeFocusDelta均为DesignTokennumber用于在调色板中偏移取色的数值增量。这一组令牌共同构成stateful有状态的neutralStroke配方体系覆盖组件轮廓线与分隔线的全部交互状态。二、配方类型的含义DesignToken要理解neutralStrokeRecipe需要拆解其泛型参数InteractiveColorRecipe。该接口定义于 sites/website/src/docs/1.x/api/fast-components.interactivecolorrecipe.mdexport interface InteractiveColorRecipe它声明了一个唯一方法evaluate(element: HTMLElement, reference?: Swatch): InteractiveSwatchSet;其中element当前组件实例HTMLElement配方在求值时用于读取该元素上的设计令牌上下文如designUnit、direction、baseLayerLuminance等reference可选参数类型为 Swatch。Swatch 表示 Palette 中的一个颜色且继承了RelativeLuminance并提供contrast(target)与toColorString()两个方法分别用于计算相对对比度和输出 CSS 颜色字符串返回值InteractiveSwatchSet。返回值InteractiveSwatchSetsites/website/src/docs/1.x/api/fast-components.interactiveswatchset.md包含四个属性属性类型语义restSwatch应用到静止rest状态的描边色hoverSwatch应用到悬停hover状态的描边色activeSwatch应用到激活active状态的描边色focusSwatch应用到聚焦focus状态的描边色因此neutralStrokeRecipe: DesignTokenInteractiveColorRecipe的含义是这是一个承载配方对象的设计令牌对该令牌求值getValueFor(element)或样式绑定后可拿到一个实现了evaluate()的配方再传入元素与参考色即可一次性得到四种交互状态的描边 Swatch。三、在自适应色彩系统中的定位Recipes 与 reference 机制在 FAST Frame 的自适应色彩系统中详见 sites/website/src/docs/1.x/design-systems/fast-frame.mdRecipe 被定义为算法 输入值的组合。文档用烘焙类比说明像用不同配比的糖、黄油、面粉、盐可以烤出不同饼干一样修改配方的数值measurements或算法instructions即可产出不同的设计系统处理方式。neutralStroke在文档的算法清单中被明确归类为Stateful. Used for strong outline, either alone or with a fill.即有状态的stateful、用于强轮廓线、可单独使用也可与填充色搭配。自适应色彩系统强调referenceSwatch 这一核心概念大多数颜色配方接收一个reference参考色使配方能依据所在组件的容器颜色而变化。例如一个按钮只需一份配方即可在浅色与深色模式下保持一致观感。neutralStrokeRecipe.evaluate(element, reference)中的第二个参数正是这一机制的体现——当组件嵌套在深色卡片或浅色页面中时传入不同的reference配方会从neutralPalette中选取在视觉与对比度上都合适的描边颜色。此外文档还给出了重要的使用纪律Adaptive Color Donts自适应色彩系统完全运行在 JavaScript 中通过向组件样式输出 CSS 自定义属性来生效。由颜色类设计令牌发射出的 CSS 自定义属性应被视为不可变——如果在普通 CSS 中手工声明这些自定义属性系统无法感知这一变更组件会以错误的颜色渲染进而引发可访问性问题。如需修改应使用DesignToken.setValueFor()API 进行设置。四、neutralStroke 的配套令牌与取色逻辑neutralStrokeRecipe是配方算法而其配套的 Delta 令牌则是配料的数值。fast-components导出的四个 Delta 令牌类型一致neutralStrokeRestDelta: DesignTokennumber neutralStrokeHoverDelta: DesignTokennumber neutralStrokeActiveDelta: DesignTokennumber neutralStrokeFocusDelta: DesignTokennumber以 sites/website/src/docs/1.x/api/fast-components.neutralstrokerestdelta.md 为代表这些数值型令牌用于在neutralPalette中按增量偏移选取 Swatch。整体逻辑可概括为配方根据reference在neutralPalette中定位一个基准索引对每个交互状态分别加上neutralStrokeRestDelta、neutralStrokeHoverDelta、neutralStrokeActiveDelta、neutralStrokeFocusDelta得到目标索引从调色板对应索引取出 Swatch构成InteractiveSwatchSet返回。而各状态色令牌如 sites/website/src/docs/1.x/api/fast-components.neutralstrokerest.md则是求值后的成品neutralStrokeRest: import(microsoft/fast-foundation).CSSDesignTokenSwatch注意其类型是CSSDesignTokenSwatch而非普通DesignToken——这意味着该令牌除了可作为值读取外还会直接以 CSS 自定义属性的形式输出到元素样式上供组件样式表消费。这正是文档所述颜色类设计令牌通过 CSS 自定义属性触达样式的具体实现形态。五、实战在组件样式中使用 neutralStrokeRecipe5.1 常规用法直接消费状态色令牌对于大多数组件开发者无需直接调用evaluate()因为 FAST Frame 的组件样式已经将求值结果绑定到了neutralStrokeRest/neutralStrokeHover/neutralStrokeActive/neutralStrokeFocus四个 CSSDesignToken 上。在自定义组件样式中可按如下方式使用import { css } from microsoft/fast-element; import { neutralStrokeRest, neutralStrokeHover, neutralStrokeActive, neutralStrokeFocus, focusStrokeWidth, strokeWidth, } from microsoft/fast-components; export const outlinedControlStyles css :host { border: calc(${strokeWidth} * 1px) solid ${neutralStrokeRest}; } :host(:hover) { border-color: ${neutralStrokeHover}; } :host(:active) { border-color: ${neutralStrokeActive}; } :host(:focus) { border-color: ${neutralStrokeFocus}; border-width: calc(${focusStrokeWidth} * 1px); } ;令牌在样式模板中直接引用即可获得随设计系统主题浅色/深色、accent/neutral 调色板自动变化的描边色无需手工管理颜色值。5.2 覆盖取值用 DesignToken API 修改若需要为特定元素覆盖描边颜色应使用 DesignToken 的值设置 API而不是在 CSS 中覆盖自定义属性neutralStrokeRest.setValueFor(myElement, myCustomSwatch); neutralStrokeHoverDelta.setValueFor(myElement, 2);这保证了自适应色彩系统仍能感知取值变化并维持组件在对比度与主题一致性上的正确表现。5.3 直接调用配方在构建自定义配方或调试工具时也可以显式求值import { neutralStrokeRecipe } from microsoft/fast-components; const recipe neutralStrokeRecipe.getValueFor(myElement); const swatchSet recipe.evaluate(myElement); // reference 可选 // swatchSet.rest / swatchSet.hover / swatchSet.active / swatchSet.focusreference未传入时配方通常以元素自身或设计系统上下文中的默认色为基准传入自定义Swatch时则依据该参考色在neutralPalette中重新定位取色窗口。六、周边生态其他同构配方neutralStrokeRecipe并非孤立存在microsoft/fast-components还导出了一批使用相同InteractiveColorRecipe接口的配方令牌见 sites/website/src/docs/1.x/api/fast-components.md 的 Variables 列表配方令牌用途accentFillRecipe强调色填充按钮背板等大面积区域accentForegroundRecipe强调色前景链接、图标、浅色强调文字neutralFillRecipe中性填充按钮等最常用背板neutralFillInputRecipe输入框填充与按钮区分的浅一档填充neutralFillStealthRecipe隐蔽填充静止态透明、低优先级neutralStrokeRecipe中性描边轮廓线、分隔线neutralStrokeDividerRecipe分隔线配方装饰性、无需满足对比度它们的求值入口统一为InteractiveColorRecipe.evaluate(element, reference?)返回统一的InteractiveSwatchSet结构因此理解neutralStrokeRecipe后即可举一反三掌握整套交互色配方体系。七、小结neutralStrokeRecipe: DesignTokenInteractiveColorRecipe是 FAST Frame 中负责生成四种交互状态描边色的配方设计令牌配方的核心方法是evaluate(element: HTMLElement, reference?: Swatch): InteractiveSwatchSet返回rest、hover、active、focus四个 Swatch状态色成品neutralStrokeRest等以CSSDesignTokenSwatch形式直接输出 CSS 自定义属性供样式表消费Delta 数值令牌neutralStrokeRestDelta等控制调色板内的取色偏移颜色类设计令牌发射的 CSS 自定义属性不可在样式表中手工覆盖应通过DesignToken.setValueFor()修改取值该配方与 accent/neutral 系列填充、前景、分隔线配方共用InteractiveColorRecipe接口掌握其一即可迁移到全部交互色配方。进一步阅读FAST Frame 自适应色彩系统、InteractiveColorRecipe 接口、InteractiveSwatchSet 接口。赞分享前端UI组件【免费下载链接】fastThe adaptive interface system for modern web experiences.项目地址https://gitcode.com/gh_mirrors/fa/fast点击查看免费下载相关推荐深入解析 FAST Frame 的 accentFillActive 设计令牌microsoft/fast-components 自适应色彩系统中的激活态填充色深入解析 FAST Frame 的 accentFillActive 设计令牌microsoft/fast components 自适应色彩系统中的激活态填前端UI组件deck.gl 高清影像金字塔实战TileLayer BitmapLayer 加载非地理坐标大图月球影像示例深度解析deck.gl 高清影像金字塔实战TileLayer BitmapLayer 加载非地理坐标大图月球影像示例深度解析 本篇技术指南以 deck.gl前端UI组件LunaTranslator 模拟器文本支持解析PS VitaVita3K游戏兼容表与 JIT 挂钩实现LunaTranslator 模拟器文本支持解析PS VitaVita3K游戏兼容表与 JIT 挂钩实现 LunaTranslator 通过挂钩Hook前端UI组件上一篇Windows 11远程桌面多用户配置完全指南下一篇提升前端开发效率extract-css-chunks-webpack-plugin与postcss-loader、sass-loader集成教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
盘古轻量化端侧大模型核心优势 1. 软硬原生深度适配,硬件利用率高
基于麒麟 NPU 原生训练,搭配 MindSpore Lite 推理引擎;采用 MoE 稀疏架构(如 30B 总参、仅 2B 激活)、量化 / 剪枝、专家预取等优化,自动调度 NPU/DSP/CPU,内… · 2026/9/27 9:19:02
treg技能(Bundle)完全指南:团队共享AI工作流的终极方案 treg技能(Bundle)完全指南:团队共享AI工作流的终极方案 【免费下载链接】treg OpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn 项目地址: https://gitcode.com/GitHub_Trending/treg/treg
treg 是一… · 2026/9/27 9:18:50
mini-swe-agent ConTree 环境指南:基于 ConTree 沙箱执行 SWE-bench 任务 人工智能大模型AI Agent代码智能体 【免费下载链接】mini-swe-agent The 100 line AI agent that solves GitHub issues or helps you in your command line. Radically simple, no huge configs, no giant monorepo—but scores >74% on SWE-bench verified! 项目地址&… · 2026/9/27 9:18:44
新型网络平台代理加盟避坑指南:保姆级建站教程与SEO实操 新型网络平台代理加盟避坑指南:保姆级建站教程与SEO实操 域名选不对,服务器选错,这俩坑不填,后面全白搭。很多想入行做新型网络平台代理加盟的朋友,一上来就纠结加盟哪家品牌,却把最基础的底层逻辑搞混了。其实,搞不懂域名备案和服务器架构,你连站… · 2026/9/27 10:55:08
从压气机设计到论文定稿:航发/燃机人的 AI 工具搭子怎么选? 先把场景说具体一点:假设你是工学 / 航空宇航科学与技术 / 航空发动机和燃气轮机专业的学生,正在完成一项很典型的毕业任务——某型轴流压气机转子叶片气动设计与 CFD 性能校核。
你需要交出的成果通常不只是一篇文章,还包括:
设… · 2026/9/27 10:55:08
网站开发企业部门图解步骤拆解费用真相 网站开发企业部门图解步骤拆解费用真相 别信那些“一口价全包”的鬼话,找建站公司最怕的就是最后被加钱,或者花大钱买个烂站。我做了十年这行,见过太多企业因为不懂【网站开发企业部门】的分工与报价逻辑,白白多掏几万块冤枉钱。今天不讲虚的,直接用… · 2026/9/27 10:54:43
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01