- From: Henri Sivonen <hsivonen@iki.fi>
- Date: Mon, 21 May 2012 12:21:50 +0300
- To: WHATWG List <whatwg@whatwg.org>
On Wed, May 16, 2012 at 9:48 PM, Matthew Wilcox <mail@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@iki.fi http://hsivonen.iki.fi/
Received on Monday, 21 May 2012 09:22:21 UTC