# @financial-times/o-visual-effects 中文文档

规范地址：https://npmcn.com/package/%40financial-times/o-visual-effects/

版本：5\.0\.2
npm 元数据更新时间：2026-10-06T13:40:03.711Z
中文译文更新时间：2026-11-14T18:23:29.674Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40financial-times/o-visual-effects
原文对照：https://npmcn.com/package/%40financial-times/o-visual-effects/?lang=original
项目主页：https://registry.origami.ft.com/components/o-visual-effects

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：18.2 kB，12 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：0 个
- peer 依赖：@financial-times/o-private-foundation ^1\.0\.0
- 首次发布：2019-02-12T16:27:26.558Z
- 最新版本发布：2026-02-26T10:55:38.249Z
- 近 30 天下载量：15587（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：24（近 12 个月 1 个）

## 中文简介

通过SCSS混音器提供视觉效果,例如阴影和动画

## 安装

```sh
npm install @financial-times/o-visual-effects
```

也可以使用：`pnpm add @financial-times/o-visual-effects`、`yarn add @financial-times/o-visual-effects`、`bun add @financial-times/o-visual-effects`

## README

# ○ 视觉效果

这个 [折纸](http://origami.ft.com/) 组件通过一组 Sass 变量和混音器提供 CSS 视觉效果.

-   [使用量](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-usage)
-   [标记](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-markup)
-   [CSS 自定义属性](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-css-custom-properties)
-   [萨斯](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-sass)
-   [移徙指南](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-migration-guide)
-   [联系人](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-contact)
-   [许可证](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-licence)

## 使用量

检查出来 [如何将 Origami 组件纳入您的项目](https://origami.ft.com/documentation/components/#including-origami-components-in-your-project) 开始 `o-visual-effects`。 。 。 .

## 标记

`o-visual-effects` 为样式提供不同级别框阴影的帮助类:

-   `.o-visual-effects-shadow-ultralow`
-   `.o-visual-effects-shadow-low`
-   `.o-visual-effects-shadow-mid`
-   `.o-visual-effects-shadow-high`

```html
<div class="o-visual-effects-shadow-high">Box content</div>
```

`o-visual-effects` 还提供 [时间函数](https://developer.mozilla.org/en-US/docs/Web/CSS/transition-timing-function) 用于幻灯片、扩展或淡出动画和转换 [CSS 自定义属性](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-css-custom-properties) (CSS变量). 用户可用 [Sass 变量](https://npmcn.com/package/%40financial-times/o-visual-effects/#readme-sass) 以应用这些计时函数.

## CSS 自定义属性

构建服务用户可使用 CSS 自定义属性( CSS 变量) 应用一致 [时间函数](https://developer.mozilla.org/en-US/docs/Web/CSS/transition-timing-function) 在自定义 CSS 中。 可变变量有:

-   `--o-visual-effects-timing-slide`
-   `--o-visual-effects-timing-expand`
-   `--o-visual-effects-timing-fade`

举个例子.

```css
.transition--slide {
    transition: all 0.5s var(--o-visual-effects-timing-slide);
}

.transition--expand {
    transition: all 0.5s var(--o-visual-effects-timing-expand);
}

.transition--fade {
    transition: all 0.5s var(--o-visual-effects-timing-fade);
}
```

CSS自定义属性(CSS变量)也可用于阴影.

举个例子.

```css
.my-shadow {
    box-shadow: var(--o-visual-effects-shadow-high);
}
```

## 萨斯

包括所有 `o-visual-effects` {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}cs call the `oVisualEffects` 搅拌。 这将包括用于过渡的框阴影样式和 CSS 自定义属性 [时间函数](https://developer.mozilla.org/en-US/docs/Web/CSS/transition-timing-function)。 。 。 .

```scss
@include oVisualEffects();
```

`o-visual-effects` 也可能是颗粒输出。 例如,如果您正在使用 Sass 等变量, 则自动关闭 CSS 自定义属性 `$o-visual-effects-timing-slide` 相反:

```scss
@include oVisualEffects(
    $opts: (
        'shadows': (
            'ultralow',
            'low',
            'mid',
            'high',
        ),
    )
);
```

如果你没有使用 `o-visual-effects` CSS,而是直接使用其他 Sass 混音器或变量 不需要调用 `oVisualEffects`。 。 。 .

### 阴影混合

这个 `oVisualEffectsShadowContent` 混合用于在元素中添加一致的阴影。 有4个层次的阴影: `ultralow`, (中文(简体) ), `low` (违约), `mid`,以及 `high`。 。 。 .

示例

```scss
.my-element {
    @include oVisualEffectsShadowContent('mid');
}
```

输出 :

```css
.my-element {
    box-shadow: 0 1px 3px rgba(77, 72, 69, 0.2), 0 6px 10px rgba(77, 72, 69, 0.15);
}
```

#### 过渡变量

在 CSS 的元素中添加过渡时,您应当使用 o-visual- effects 变量来进行一致的计时 `slide`, (中文(简体) ), `expand`,以及 `fade` 效应.

示例

```scss
.transition--slide {
    transition: all 0.5s $o-visual-effects-timing-slide;
}

.transition--expand {
    transition: all 0.5s $o-visual-effects-timing-expand;
}

.transition--fade {
    transition: all 0.5s $o-visual-effects-timing-fade;
}
```

输出 :

```css
.transition--slide {
    transition: all 0.5s cubic-bezier(1, 0, 0.5, 1.275);
}

.transition--expand {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.transition--fade {
    transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
```

## 移徙指南

| 状态 | 主要版本 | 最后一个小版本 | 移徙指南 |
| :-: | :-: | :-: | :-: |
| 维护 | 页:1 | 不详 | [迁移到 v5](https://npmcn.com/package/%40financial-times/o-visual-effects/MIGRATION.md#migrating-from-v4-to-v5) |
| 已贬值 | 页:1 | 4.2 (中文(简体) ) | [迁移到 v4](https://npmcn.com/package/%40financial-times/o-visual-effects/MIGRATION.md#migrating-from-v3-to-v4) |
| 已贬值 | 3个 | 3.0 调用 | [迁移到 v3](https://npmcn.com/package/%40financial-times/o-visual-effects/MIGRATION.md#migrating-from-v2-to-v3) |
| 已贬值 | 2个 | 2.1 国家 | [迁移到 v2](https://npmcn.com/package/%40financial-times/o-visual-effects/MIGRATION.md#migrating-from-v1-to-v2) |
| 已贬值 | 1个 | 1.0 国家 | 不详 |

## 联系人

如果您对本部分有任何问题或评论,或需要帮助使用本部分,请 [提出问题](https://github.com/Financial-Times/o-visual-effects/issues)访问 [#origami - 支持](https://financialtimes.slack.com/messages/origami-support/) 或电子邮件 [折纸支持](mailto:origami-support@ft.com)。 。 。 .

* * *

## 许可证

本软件由金融时报根据以下规定出版: [麻省理工学院许可证](http://opensource.org/licenses/MIT)。 。 。 .

## 常见问题

### @financial-times/o-visual-effects 是什么？

通过SCSS混音器提供视觉效果,例如阴影和动画

### 如何安装 @financial-times/o-visual-effects？

在项目目录运行 npm install @financial-times/o-visual-effects，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@financial-times/o-private-foundation（^1\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @financial-times/o-visual-effects 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/financial-times\_\_o-visual-effects 是否存在。

### @financial-times/o-visual-effects 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @financial-times/o-visual-effects 可以商用吗？

@financial-times/o-visual-effects 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @financial-times/o-visual-effects 的下载量有多少？

根据 npm 官方下载统计，@financial-times/o-visual-effects 在 2026/10/15 – 2026/11/13 这 30 天内被下载 15,587 次，日均约 520 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @financial-times/o-visual-effects 还在维护吗？

最新版本 5\.0\.2 发布于 2026/02/26（8 个月前）；至今共发布 24 个版本，其中过去 12 个月发布了 1 个；首次发布于 2019/02/13。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

