Skip to content

korhox/react-scrollfade

Repository files navigation

React Scrollfade

React Scrollfade is a React component designed to dynamically fade out the bottom of a scrollable element based on the scrollbars position.

demo

Fork of a fork

This repository is forked from a fork created by WajuAbolarin, who introduced the height prop. The original repository is benestudio/react-scrollfade and it's licensed under the MIT license. This fork is also kept under the MIT license and it's maintained by me. I'm not the original author of this library, I just needed to update it to the latest React version and I'm keeping it up to date.

If you are looking for the original repository, please go to benestudio/react-scrollfade instead. I'm maintaining this fork for my own projects, but I'm happy to accept pull requests and issues if you want to contribute.

I'm planning to add some more features to this library, like the ability to customize the fade intensity. If you have any suggestions, please open an issue.

This package is also available on npm as @korhox/react-scrollfade.

Installation

You can install the library using npm:

npm install @korhox/react-scrollfade

How to use it

It works with zero configuration needed. Just include it as a direct child of the scrollable element. The fade makes the bottom of the element transparent, so the color of the fade is determined by what is under it.

import React from 'react';
import ScrollFade from '@korhox/react-scrollfade';

export const Example = () => (
    <div
        style={{
            width: 200,
            height: 100,
            overflowY: 'auto',
            background: 'red',
        }}
    >
        <ScrollFade />
        Dolor amet eu occaecat excepteur do adipisicing cillum duis. Est ullamco ullamco sit ea irure consequat id do ex
        enim consectetur nisi duis elit. Qui mollit magna exercitation est sit.
    </div>
);

Custom Height

You can also set a different height for the fade

import React from 'react';
import ScrollFade from '@korhox/react-scrollfade';

export const ExampleWithCustomHeight = () => (
    <div
        style={{
            width: 200,
            height: 100,
            overflowY: 'auto',
            background: 'red',
        }}
    >
        <ScrollFade height={30} />
        Dolor amet eu occaecat excepteur do adipisicing cillum duis. Est ullamco ullamco sit ea irure consequat id do ex
        enim consectetur nisi duis elit. Qui mollit magna exercitation est sit.
    </div>
);

Browser Support

See browser compatibilities in the caniuse.com article.

Examples

There are interactive examples.

npm run examples starts an instance where you can look at them.

Contribution

We welcome contributions in the form of pull requests. The examples also serve as a development server.

If you have any issues, questions or suggestions please open a new Issue.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages