视差

根据文档的滚动位置动画 CSS 属性。

用法

要应用此组件,请将 data-uk-parallax 属性添加到容器元素。 为您要动画的每个 CSS 属性添加一个具有所需动画目标值的选项。

标题

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

标记

<div data-uk-parallax="{bg: '-200'}">...</div>

选项

UIkit 提供了许多选项,您可以将其添加到 data-uk-parallax 属性中

选项 描述
x 以像素为单位动画 translateX。
xp 以百分比为单位动画 translateX。
y 以像素为单位动画 translateY。
yp 以百分比为单位动画 translateY。
bg 动画背景图像。
bgp 以百分比为单位动画背景图像。
rotate 以度为单位顺时针动画旋转。
scale 动画缩放。
color 动画颜色(需要开始和停止值)。
background-color 动画背景颜色(需要开始和停止值)。
border-color 动画边框颜色(需要开始和停止值)。
opacity 动画不透明度。
blur 动画模糊滤镜。
hue 动画色相旋转滤镜。
grayscale 动画灰度滤镜。
invert 动画反转滤镜。
saturate 动画饱和度滤镜。
sepia 动画棕褐色滤镜。

注意 您可以通过将宽度和高度等具有单个值的任何 CSS 属性添加到属性中来对其进行动画处理。

标记

<div data-uk-parallax="{y: '-200', opacity: '0'}">...</div>

开始和停止值

属性始终从当前值动画到您在选项中设置的目标值。 但是,您也可以自己定义开始值。 这是通过将包含两个以逗号分隔的值的字符串传递给选项来完成的。

注意 某些属性(如颜色)需要开始和停止值!

标记

<div data-uk-parallax="{x: '-100,100', 'background-color': '#EBF7FD,#FFF1F0'}">...</div>

嵌套动画

为嵌套元素使用不同的动画是一项简单的任务。 只需在第一个视差容器内创建另一个容器,并将您的选项添加到新的 data-uk-parallax 属性中即可。

示例

标题

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

标记

<div data-uk-parallax="{bg: -200}">
    <div data-uk-parallax="{opacity: '0,1', scale: '0,1'}">...</div>
</div>

目标选项

通常,动画持续的时间与元素本身在视口中持续的时间一样长。 要根据另一个元素的视口可见性开始和停止动画,请使用 target 选项。 这在使用嵌套动画时很有帮助。

示例

标题

只要标题“目标选项”在视口中,此文本就会进行动画处理。

标记


<div id="target-id">...</div>
<div data-uk-parallax="{target: '#target-id'}">...</div>

速度

要调整动画的缓动,请添加 velocity 选项。

示例

0.04
0.2
0.6
1
2
3
4

标记

<div data-uk-parallax="{velocity: '0.5'}">
    ...
</div>

视口

使用 viewport 选项,可以调整动画的持续时间。 当值为 1false 时,动画将持续到元素在视口中为止。 例如,将其设置为 0.5,则仅在视口的前一半中对属性进行动画处理。

示例

标题

此文本将动画直到它到达视口的中间位置。

标记

<div data-uk-parallax="{viewport: '0.5'}">...</div>

JavaScript 选项

选项 可能的值 默认值 描述
velocity 浮点数 0.5 滚动期间的动画速度
target 混合类型 false 用于动画持续时间的元素尺寸参考。
viewport 浮点数(0 到 1) false 取决于视口的动画范围。
media 整数 / 字符串 false 活动状态的条件,宽度为整数(例如 640)或 css 媒体查询

手动初始化元素

var parallax = UIkit.parallax(element, { /* options */ });