- From: Simon Pieters <simonp@opera.com>
- Date: Thu, 12 Feb 2015 10:39:29 +0400
- To: "www-style@w3.org" <www-style@w3.org>, "Rick Byers" <rbyers@chromium.org>
- Cc: "eae@chromium.org" <eae@chromium.org>, "Yufeng Shen" <miletus@chromium.org>, "David Bokan" <bokan@chromium.org>, "Jacob Rossi" <Jacob.Rossi@microsoft.com>, "Boris Zbarsky" <bzbarsky@mit.edu>
On Mon, 09 Feb 2015 13:27:25 +0400, Simon Pieters <simonp@opera.com> wrote:
>> 5) Viewport positioning/sizing
>> Window: moveTo moveBy resizeTo resizeBy innerWidth innerHeight screenX
>> screenY outerWidth outerHeight
>> We have not attempted to turn these into double. I suspect there's
>> non-trivial web compat risk (as for element sizing/measurement).
>> There's
>> also non-trivial work required for us to implement this in blink. At
>> the
>> same time I'm not sure there's much benefit. Last I checked, many OSes
>> didn't support positioning/sizing windows at sub-DIP precision. Unless
>> other vendors feel differently, I think we should just change these
>> back to
>> 'long' in the spec.
>
> That seems reasonable. If the situation changes in the future and OSes
> support sub-pixel window positioning and there is demand for this, we
> can change it again and check if it is compatible, but currently it
> seems it would be meaningless for browsers to change from long to double
> for these. Also, window.open()'s features argument only supports
> integers currently.
Actually it seems it is already possible to have sub-CSS-pixel window
size/position by changing the browser's zoom level. Certainly I can get
non-integer values for getComputedStyle(document.documentElement).width by
changing the browser zoom in Chrome/Opera/Firefox/Safari on Mac OS X.
A possible bad effect of rounding the viewport to integers is if the
author sets e.g. the width of an element to the reported viewport width,
it might overflow by half a CSS pixel, causing horizontal scrolling.
Fortunately doing something that gives the right result is simpler
(width:auto or width:100%).
It is likely that the Web assumes integer sizes for viewports, at least
for media queries. I have seen media queries written like this:
@media (max-width: 600px) { ... }
@media (min-width: 601px) { ... }
So still, it seems there is a real risk and little benefit for supporting
sub-CSS-pixel viewports.
--
Simon Pieters
Opera Software
Received on Thursday, 12 February 2015 09:40:03 UTC