[whatwg] Bandwidth media queries
Henri Sivonen
hsivonen at iki.fi
Mon May 21 02:21:50 PDT 2012
On Wed, May 16, 2012 at 9:48 PM, Matthew Wilcox <mail at matthewwilcox.com> wrote:
> If you're a browser you are the software interpreting the instructions
> of a given language: CSS in this case.
In addition to the problem that it's actually hard for browsers to
know what the current bandwidth is especially on mobile networks, some
of this responsive design threads assume that the author knows best
when to withdraw content or content quality due to low bandwidth.
>From the user perspective, I think it's not at all clear that users
always prefer to get less content when they are on a slower
connection. Personally, I expect to see "full" content on a slow
connection if I wait for long enough, but it's also annoying to have
to wait for the whole page to load before the page is usable. The
problem is that sometimes waiting is worth it and sometimes it isn't
and the author might not know when the user considers the wait to be
worth it.
Unfortunately, the way the load event works makes it hard to make
pages so that they start working before images are fully loaded and
then keep improving in image quality if the user chooses to wait.
Also, some browsers intentionally limit their own ability to do
incremental rendering both to get better throughput and to get better
perceptual speed in cases where the overall page load is relatively
fast.
On a very slow networks (GPRS or airline Wi-Fi) I think Opera Mini
with *full* image quality provides the best experience: the page
renders with its final layout and becomes interactive with images
replaced with large areas of color that represents the average color
occupying that area in the images. The images then become sharper over
time. Thus, the user has the option to start interacting with the page
right away if the user deems the image is not worth the wait or can
choose to wait if the user expects the images to contain something
important. (This assumes, of course, that the user is not paying per
byte even though the connection is slow, so that it's harmless from
the user perspective to start loading data that the user might dismiss
by navigating away from the page without waiting for the images to
load in full.)
Instead of giving web authors the tools to micro-manage what images
get shown in what quality under various bandwidth conditions, I think
it would be better to enable a load mode in traditional-architecture
(that is, not the Opera Mini thin client architecture) browsers that
would allow early layout and load event and progressive image quality
enhancement after the load event is fired and the page has its final
layout (in the sense of box dimensions). I.e. have a mode where the
load event fires as soon as the everything except images have loaded
and the dimensions of all image boxes are known to the CSS formatter
(and PNG and JPEG progression is used 1990s style after the load even
has fired).
--
Henri Sivonen
hsivonen at iki.fi
http://hsivonen.iki.fi/
More information about the whatwg
mailing list