Safari rounds off fractional pixels
I’m looking to measure the width of an element with width: 66.666%
, whose container is width: 300px
. Most browsers return a fractional pixel value, i.e. 199.98px
. Safari rounds off the fractional pixel value to 199px
. It’s a bit odd, as I would expect it would at least round up to 200px
when the value is that close.
See demo:
See the Pen getComputedStyle width 66.666% by David DeSandro (@desandro) on CodePen.
I’ve opened WebKit bug #126844 to capture this behavior.
I have found that using calc()
values produces more expected results. If I change the width of the element to width: calc( 100% * 2 / 3 )
, Safari returns with 200px
. It’s still problematic, but it’s an improvement.
See the Pen getComputedStyle width calc( 100% * 2/3) by David DeSandro (@desandro) on CodePen.