td boundaries with a background color render a fine line on Android Chrome
Reported by
joh...@gmail.com,
May 23 2016
|
|||||||
Issue descriptionExample URL: Steps to reproduce the problem: View a table with td boundaries and a td background color differing from the table background color on Android Chrome. The attached pared-down html is sufficient. What is the expected behavior? A solid table color, as rendered by other browsers (including Chrome on non-Android). What went wrong? The background color of the table (or <body> or whatever is behind it) leaks through with a 1 pixel wide line. No matter how much you zoom in, it remains only 1 pixel wide, though it occasionally vanishes entirely at certain levels of zoom. Does it occur on multiple sites: N/A Is it a problem with a plugin? N/A Did this work before? N/A Does this work in other browsers? N/A Chrome version: 50.0.2661.89 Channel: n/a OS Version: 5.1.1 Flash Version: Shockwave Flash 21.0 r0 The https://www.google.com/webmasters/tools/mobile-friendly/ site is able to reproduce this bug sometimes, and will show the broken fine lines under certain conditions. (Seems pseudo-random related to the size of the table, td, etc.)
,
Jul 12 2016
Confirmed. Not sure why it's only happening on Android, however. In device emulation it shows up super obviously. Are we painting the td background rect assuming there's a border?
,
Jul 12 2016
This may be fixed by crbug.com/485650. Assigning to myself to confirm.
,
Dec 13 2016
crbug.com/485650 does not fix this issue.
,
Dec 13 2016
,
Mar 9 2018
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Mar 9 2018
Will take a quick look. Seems related to page scale (not device scale).
,
Mar 9 2018
I debugged with the attached minimized test case using devtools mobile emulation. Based on paint verbose logging, paint results seem all correct:
{
"method": "drawRect",
"params": {
"rect": {
"left": 8,
"top": 8,
"right": 972,
"bottom": 60
},
"paint": {
"textSize": 12,
"textScaleX": 1,
"textSkewX": 0,
"color": "#FFFF0000",
"strokeWidth": 0,
"strokeMiter": 4,
"flags": "AntiAlias",
"filterLevel": "Low",
"textAlign": "Left",
"strokeCap": "Butt",
"strokeJoin": "Miter",
"styleName": "Fill",
"textEncoding": "UTF-8",
"hinting": "Normal"
}
}
},
{
"method": "drawRect",
"params": {
"rect": {
"left": 8,
"top": 8,
"right": 972,
"bottom": 60
},
"paint": {
"textSize": 12,
"textScaleX": 1,
"textSkewX": 0,
"color": "#FF808080",
"strokeWidth": 0,
"strokeMiter": 4,
"flags": "AntiAlias",
"filterLevel": "Low",
"textAlign": "Left",
"strokeCap": "Butt",
"strokeJoin": "Miter",
"styleName": "Fill",
"textEncoding": "UTF-8",
"hinting": "Normal"
}
}
}
And the visual rects are also correct.
The effect seems a result of rasterization of anti-aliased sub-physical-pixels along the edge of the rectangles, when page-scale-factor * device-scale-factor is not integral. Is this another failure of bleed avoidance?
,
Mar 12 2018
This sounds a lot like https://bugs.chromium.org/p/chromium/issues/detail?id=431480#c5. At least in the past, tables haven't handled subpixel positioning for spec reasons.
,
Mar 12 2018
This bug seems different from bug 431480 and not related to subpixel table layout because - all the painting commands shown in #c8 are using integral geometries; - the bug doesn't occur when adjusting zoom factor; - the bug occurs on mobile devices and mobile emulation (which have page scale when displaying desktop pages). Based on observation with mobile emulation, I think the hair line occurs because when we raster the td background, the geometries are not integral and the edge pixels are blended with the pixels of the table background, showing with a red hue. |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by cbiesin...@chromium.org
, Jul 12 2016