LazyLoad: Only lazily load http/https images.

Before this CL, data URI images would be considered for lazy loading,
even though a data URI image would actually be loaded immediately
anyways and not get deferred. For image elements, this pollutes the
Blink.VisibleLoadTime.LazyLoadImages.* metrics with load times of all
these data URI images that aren't actually eligible for lazy loading.
For CSS background images, this causes Chrome to begin montoring the
elements containing these images with an intersection observer until the
user scrolls the viewport down to them, even though the data URI image
loads instantly.

This CL changes the logic to only consider http/https images for lazy
loading, both for image elements and CSS background images.

Bug: 920479
Change-Id: I105db546695c3464789703769013fa955f3bf10c
Reviewed-on: https://chromium-review.googlesource.com/c/1404575
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Scott Little <sclittle@chromium.org>
Cr-Commit-Position: refs/heads/master@{#621758}
2 files changed