Parallax
Vue Bootstrap 5 Parallax plugin
Parallax is a plugin that adds scrolling effect animation for your images.
Responsive Parallax plugin built with the latest Bootstrap 5. Many customization examples of scrolling effect images animation like scroll delay, scroll direction.Note: Read the API tab to find all available options and advanced customization
Basic example
To initialize Parallax effect simply use
MDBParallax
component and provide
src
property with path to your image
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/3.webp" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Direction
Change parallax scroll direction with direction
property
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" direction="right" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Combine horizontal and vertical directions
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" direction="up right" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Delay
Change delay of the scroll with delay
property
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" :delay="2" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Scale
Change scale of the image with scale
property
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" :scale="1.8" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Scroll transition
Change default scroll transition timing function with transition
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" transition="linear" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Max transition
Change maximum scroll value of the image with maxTransition
property.
Give values within 0-100 range
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" :maxTransition="60" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Max image height
Set maximal parallax container height with maxHeight
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" :maxHeight="400" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Image alignment
Horizontal and vertical alignment of the image is set to center by
default. Change horizontal alignment with
alignHorizontal
and vertical with
alignVertical
(vertical alignment will only work with
maxHeight
property set)
Image horizontally aligned
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp" alignHorizontal="left" />
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Image vertically aligned
<template>
<MDBParallax
src="https://mdbootstrap.com/img/Photos/Slides/4.webp"
:maxHeight="500"
alignVertical="top"
/>
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Container overflow
Make parallax overflow its container with overflow<
<template>
<MDBParallax src="https://mdbootstrap.com/img/new/slides/041.webp"
overflow
direction="right"
aligHorizontal="left"
/>
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
export default {
components: {
MDBParallax
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
</script>
Parallax with content
Place any content inside the parallax. MDBParallax
is a
position: relative
container so remember to style your
content accordingly
Parallax content
Some quick example text to show you possibilites of the parallax element.
<template>
<MDBParallax src="https://mdbootstrap.com/img/Photos/Slides/4.webp">
<MDBContainer class="d-flex justify-content-center align-items-center" style="height: 100%">
<MDBCard>
<MDBCardBody>
<MDBCardTitle>Parallax content</MDBCardTitle>
<MDBCardText>
Some quick example text to show you possibilites of the
parallax element.
</MDBCardText>
<MDBBtn color="primary"> Button </MDBBtn>
</MDBCardBody>
</MDBCard>
</MDBContainer>
</MDBParallax>
</template>
<script>
import { MDBParallax } from 'mdb-vue-parallax';
import { MDBContainer, MDBCard, MDBCardBody, MDBCardTitle, MDBCardText, MDBBtn } from 'mdb-vue-ui-kit';
export default {
components: {
MDBParallax,
MDBContainer,
MDBCard,
MDBCardBody,
MDBCardTitle,
MDBCardText,
MDBBtn
}
};
</script>
<script setup lang="ts">
import { MDBParallax } from 'mdb-vue-parallax';
import { MDBContainer, MDBCard, MDBCardBody, MDBCardTitle, MDBCardText, MDBBtn } from 'mdb-vue-ui-kit';
</script>
Parallax - API
Import
<script>
import {
MDBParallax
} from "mdb-vue-parallax";
</script>
Properties
Name | Type | Default | Description |
---|---|---|---|
alignHorizontal
|
String | 'center' |
Determines which horizontal part of the image will be more visible during the parallax effect. Possible settings: right | left | center |
alignVertical
|
String | 'center' |
Determines which vertical part of the image will be more visible during the parallax
effect. Works only when data-mdb-max-height is set. Possible settings:
top | bottom | center
|
delay
|
Number | 0.4 |
Sets the time in seconds in which translation of the image will still be going after the user stops scrolling. |
direction |
String | 'up' |
Sets direction in which the image will be translated when scrolling down the page. Possible settings: up | right | down | left | up left | up right | down left | left right. |
maxHeight
|
Number | 0 |
Sets maximal height of the parallax container. |
maxTransition
|
Number | 0 |
When maxTransition is set, parallax animation will stop after
given percentage of user viewport is scrolled.
|
overflow
|
Boolean | false |
When set to true, the parallax image will translate out of its container and will overlap content on the page. |
scale
|
Number | 1.3 |
Sets scale of the image. The higher the scale is set, the bigger parallax scroll
effect will be visible, but the image will lose in quality. To keep the image quality
choose higher resolution images or limit the height of the parallax container with
maxHeight attribute.
|
src
|
String | ' |
Sets image source for parallax component. Obligatory to instantiate the component. |
transition
|
String | 'cubic-bezier(0,0,0,1)' |
Sets transition timing function for parallax scroll efect. Can receive timing functions such 'ease', 'linear', 'cubic-bezier'. |