Detect floats to avoid or clear due to negative margin top
When a negative margin top pushes a block back up into its previous siblings
we need to check for any floats in those siblings it now needs to avoid or clear.
Previously we were just looking at its neighbour, we need to keep looking until
we reach a sibling that we don't overlap.
BUG=
666487
Committed:
https://crrev.com/3c8d298acf826fc5337c526b1016a03b37c2656a
Cr-Commit-Position: refs/heads/master@{#435497}