Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<html>
<head>
<title>CSS Test: Aligning with auto margins</title>
<link href="support/flexbox.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
<link rel="author" title="Google Inc." href="http://www.google.com/">
<link rel="match" href="auto-margins-001-ref.html">
<style>
#circles, #circles div {
display: flex;
width: -webkit-calc(100% - 4em);
width: calc(100% - 4em);
height: -webkit-calc(100% - 4em);
height: calc(100% - 4em);
border: 1em solid blue;
border-radius:50%;
margin: auto;
}
#circles { width:9em; height:9em; }
</style>
</head>
<body>
<p>The black rectangle should be centered vertically and horizontally.</p>
<div class="flexbox" style="width: 4em; height: 4em; background: silver">
<p id="ok" style="margin: auto; font-family: Ahem;">OK</p>
</div>
<div class="flexbox" style="width: 4em; height: 4em; margin-top: 10px; background: silver; writing-mode: vertical-rl">
<p id="okVertical" style="margin: auto; font-family: Ahem;">OK</p>
</div>
<p>You should see 3 blue concentric circles.</p>
<div id="circles"><div><div></div></div></div>
<p id="log">The computed style of each margin should not be 0.</p>
<script>
var okStyle = getComputedStyle(document.getElementById('ok'));
document.getElementById("log").innerHTML += "<br>OK: " +
((parseInt(okStyle.marginTop) && parseInt(okStyle.marginRight) && parseInt(okStyle.marginBottom) && parseInt(okStyle.marginLeft)) ? "PASS" : "FAIL");
var okVerticalStyle = getComputedStyle(document.getElementById('okVertical'));
document.getElementById("log").innerHTML += "<br>Vertical OK: " +
((parseInt(okVerticalStyle.marginTop) && parseInt(okVerticalStyle.marginRight) && parseInt(okVerticalStyle.marginBottom) && parseInt(okVerticalStyle.marginLeft)) ? "PASS" : "FAIL");
</script>
</body>
</html>