@sitelintcode/css-lazy-loading-background
v0.0.11
Published
Lazy loading background in CSS
Downloads
6
Maintainers
Readme
CSS Lazy Loading Background
Lazy loading CSS background isn't available out of the box in the browser. Therefore this package should help to achieve that.
Demo
Getting started
First download the package:
npm install @sitelintcode/css-lazy-loading-background --save
Setting up the image
CSS
Specify the whole image URL in --background-image-lazy:
, but without url()
, as normally you would use.
Example usage for a single image:
--background-image-lazy: prague-3010406_1920_thumbnail.jpeg;
background-image: var(--background-image-lazy);
Example usage for for multiple images through image-set
CSS functional notation:
--background-image-set-lazy: image-lazy-set(
url("ekg_1280.png") type("image/png"),
"ekg_1280.webp" type("image/webp")
);
background-image: var(--background-image-set-lazy);
HTML and attribute data-lazy-background
Eventually, if you want to use as the attribute data-lazy-background
then:
<div class="example-data-lazy-background" data-lazy-background="san-francisco-panorama.jpg"></div>
TypeScript
import CssLazyLoadingBackground from '@sitelintcode/css-lazy-loading-background';
const cssLazyLoadingBackground: CssLazyLoadingBackground = new CssLazyLoadingBackground();
cssLazyLoadingBackground.initialise();
The initialise
method will automatically be applied based on document.readyState
and if the page isn't loaded yet then use DOMContentLoaded
event.
JavaScript
The package is also exposed to the global object (window
in the browser) so you can use it in following way:
<script>
(function() {
const cssLazyLoadingBackground = new window['css-lazy-loading-background'].CssLazyLoadingBackground();
cssLazyLoadingBackground.initialise();
}());
</script>
Technical
import { terser } from "rollup-plugin-terser";
was replaced withimport { terser } from "rollup-plugin-minification";
becauserollup-plugin-terser
is not compatible with Rollup 3.x version. See: https://github.com/TrySound/rollup-plugin-terser/issues/119
Contributing
Contributions are welcome, and greatly appreciated! Contributing doesn't just mean submitting pull requests. There are many different ways for you to get involved, including answering questions on the issues, reporting or triaging bugs, and participating in the features evolution process.
License
MOZILLA PUBLIC LICENSE, VERSION 2.0