<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en-US"> <head> <title>CSS 2.1 Test Suite: Test for flow around floats</title> <link rel="author" title="L. David Baron" href="https://dbaron.org/" /> <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" /> <link rel="help" href="http://www.w3.org/TR/CSS21/visuren.html#floats" /> <meta name="assert" content="The border box of a table, a block-level replaced element, or an element in the normal flow that establishes a new block formatting context (such as an element with 'overflow' other than 'visible') must not overlap any floats in the same block formatting context as the element itself." /> <meta name="flags" content="" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"> table { margin: 0; border-spacing: 0; } td, th { padding: 0; vertical-align: top; } </style> </head> <body> <!-- 6px margin between (from top, from bottom, from both) --> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 6px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 6px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 6px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 6px;"></div> </td></tr></table> <!-- 5px margin between (from both) --> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 5px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 5px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 10px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -5px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -5px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 10px;"></div> </td></tr></table> <!-- 4px margin between (from both) --> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 4px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 4px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -1px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 5px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -1px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 5px;"></div> </td></tr></table> <!-- negative margin between --> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -4px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 0px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: 0px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -4px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -4px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -1px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -1px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -4px;"></div> </td></tr></table> <table width="300" style="background: aqua"><tr><td> <div style="float: left; height: 10px; width: 150px; background: blue"></div> <div style="height: 5px; background: purple; margin-bottom: -4px;"></div> <div style="overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -4px;"></div> </td></tr></table> </body> </html>