(Screenshot taken from latest Chrome for Windows)
See the light grey stripe at the bottom? It's supposed to be the same color as the rest of the page.
As far as I know, this is not a jQuery Color bug but rather a WebKit issue because it also affects Safari on Mac.
There are quite a few workarounds.
Fix #1 - Force redraw in animation done handler
Obligatory Stack Overflow link: http://stackoverflow.com/questions/3485365/how-can-i-force-webkit-to-redraw-repaint-to-propagate-style-changes
The accepted answer is very simple; it's just three lines of JavaScript and doesn't require jQuery.
Using this fix with the entire body presented a problem with my project. These rapid changes to display make the page behave like it's scrolling back to the top.
Fix #2 - Apply two-thirds of clearfix to empty div/footer
My instincts told me to add an empty <footer /> to the bottom of the screen and give it clearfix styling. Clearfix corrects this bug. You can actually use two-thirds of a certain recommended clearfix:footer:after {
content:"";
display: table;
}
(It's missing clear:both;)
<footer /> can be changed to <div /> or any number of other elements.
Fix #3 - Apply two-thirds of clearfix to body
Adding an empty HTML element seems like a bad idea to me. HTML5 is supposed to be about content, and here I am adding an element just to fix a browser-specific presentation bug.
As it turns out, you can use this bit of CSS and skip the empty footer:
body:after {
content: "";
display: table;
}
I don't know why this works
Maybe I'll update this post later when I figure it out.
No comments:
Post a Comment