Hi @maxfrederick2
Thank you for the screenshot.
This usually happens due to a bad CSS or script, I can see the builder will set the position on the fly, so when the Lazy Load is enabled the image doesn’t really exist yet and the script will get the wrong top position, here is a screen record to understand what is happening https://monosnap.com/file/ESQ1ACRJyVHdTV9Ol0FnRn1R7Z0ytS you can see when I resize the screen it forces the correct position because that time image already exists.
In case the Native Lazy Load in Smush Settings is not making any difference I suggest contacting the Elementor support to enhance the Lazy Load compatibility of this specific module.
We can exclude those images from Lazy Load but since Elementor adds the custom class to the Div we need to use a custom code for it.
<?php
add_filter( 'smush_skip_image_from_lazy_load', function( $status, $src, $image ) {
$exclude = [
'https://abc.com/wp-content/path-to-image-one.jpg',
'https://abc.com/wp-content/path-to-image-two.jpg',
];
if (in_array($src, $exclude) ) {
$status = true;
}
return $status;
}, 99, 3 );
You can add the code as a mu-plugin following this guide https://wpmudev.com/docs/using-wordpress/installing-wordpress-plugins/#installing-mu-plugins
Best Regards
Patrick Freitas