Source code

Revision control

Copy as Markdown

Other Tools

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>The Second Acid Test (pixel-for-pixel reference version)</title>
<style type="text/css">
*
{
margin: 0;
padding: 0;
}
html
{
font: 12px sans-serif;
overflow: hidden;
color: red;
background: white;
}
#top
{
font: 2em / 24px sans-serif;
margin: 2em 3.5em 0;
text-align: left;
white-space: pre;
color: navy;
}
.picture
{
margin: 3em 1em 1em 6em;
}
.line
{
height: 1em;
border: 0 solid black;
background: yellow;
}
.one
{
width: 0;
margin-left: 5em;
border-width: 0 2em;
}
.two
{
width: 4em;
margin-left: 3em;
border-width: 0 2em;
}
.three
{
width: 8em;
margin-left: 2em;
border-width: 0 1em;
}
/* the eyes, in all their three-layer glory
these need to appear with both background layers as on hidpi displays
the two background layers don't just create a solid yellow background */
.eyes
{
position: relative;
width: 12em;
height: 2em;
margin-left: 1em;
background: red;
}
.eyes .lower
{
position: absolute;
z-index: 1; /* redundant, but make stacking explicit */
width: 9em;
height: 2em;
margin-left: 1em;
border-left: solid 1em yellow;
background: fixed url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAABnRSTlMAAAAAAABupgeRAAAABmJLR0QA%2FwD%2FAP%2BgvaeTAAAAEUlEQVR42mP4%2F58BCv7%2FZwAAHfAD%2FabwPj4AAAAASUVORK5CYII%3D');
}
.eyes .upper
{
position: absolute;
z-index: 2; /* redundant, but make stacking explicit */
width: 10em;
height: 2em;
margin-left: 0;
border: solid 1em black;
border-width: 0 1em;
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAABnRSTlMAAAAAAABupgeRAAAABmJLR0QA%2FwD%2FAP%2BgvaeTAAAAEUlEQVR42mP4%2F58BCv7%2FZwAAHfAD%2FabwPj4AAAAASUVORK5CYII%3D') fixed 1px 0;
}
.eyes .img
{
position: absolute;
z-index: 3; /* redundant, but make stacking explicit */
width: 8em;
height: 2em;
margin-left: 2em;
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAAAYCAYAAAFy7sgCAAAGsUlEQVRo3u2ZbWwcZxHHf3s%2B7LNbO3ZjXBtowprGODRX0qpNQCjmJKuVKhMl1P2AkCwhFOIKkCBSm9IXavGFKAixIAECwkmWo5MrhRI3Ub40IEwQgp6aIDg3Cd6eEqyIHEteah%2B1E69vhw%2BZtTaX8704ZzkKjHS6271nZ56ZZ%2BY%2F%2F%2BdZKF%2FCwYshx3EkkggLsD1v4FQkEZZYLCbAKyG9%2Ba9EIsG6hnUAf8x74K3aUC3j4%2BM54HcsR2oAIomwZOezkv%2FnSHpYNh%2BNCmAE7xv94zvFdd1bHsjMZmQkPSxAJP%2B%2FfuBLwK54PC7JZFKAVJmzXLBt2w%2FMvcDLwIb8QS8CeJ4nkURYIomw7J%2FYJ8BvSiiXptGGxWds2%2Fa9%2Bnaxh%2BYAD%2Bgt04NDgABTpQY2cvvSFLzw86gWeBVwC8SzlOSv2YeBPfmDBoBHgKmR9LBEEmHZfDTqGykqfkUE0nA78BzQGfSgUeP3wNeTXwXg7MwZDhw4UHL6ra2ti79%2FOvljgG8AZ4H64Lhm4MvAocxsRppGG%2FxcXihlwLIs6R%2FfKV2HO%2F26uA94pdDYUKUZUU7W1RQYXA98Gnhaf5%2FXWX0HeAHYoQonqa4sZSOsSWMCWeC9Yko%2BCQwBe4E6oNc0Tc91XTl1%2BaTsn9gnI%2Blhyc5nZWxsrBIkKSbl2tiic3tW53YDEwOKaoFBrcOfqKee53lG9xsPMjV784r%2F4lO%2FpPvyJ9iyZcuvFSaXK5XYeAZ4CDgGvB3MS4B54LQuWYPeuy4iRFsevsXqpuYoqVQKIH2bK1CuDQNo11o4XUzh%2FcDWYIe1LEtyuZx4niee54njOGKapgfsqlL%2Bl2OjEXg8nxrc1dJ0h3hbtL%2BGCtz7KPBF4CuBe9uB15VafE8hr9qylI3HgG8C2%2FK7VyHZoJj7MrBRm30qFotJMpkU27YlHo%2F7Ha5a%2BV%2FKRkSJ4KuKRLVLKapTjB1SzAVIjY2NSXY%2BKyPpYdk%2FsU9OXT4pruv6BdZbBQfKsVGnvWlIe1VB6VQO8JxC1vZYLCbZ%2BaxsPhpdZDyRRFhG0sPiOE6ldKBg2lRg4xF1YCDIIIKN7DGgD3gH%2BBXwejKZfPrs2tPs%2FvPN2bKuYR1nd7xLKBSSJeqoXKnERjPwNWAG%2BLn2rZuM%2B4Tpml6vaWlp4eLcxVusZq5lCgVgOVKJjRqdX86ffL4D5wIoZACnTpw4wRMdT96i%2FImOJxERAs4uVyqxUacF%2FPdiCj%2BjdRBRGFtwXVdG0sPSdbhTmkYbpH98p2RmM2JZlig1vl0GWo4NQ%2Fn%2Bs5pKRXfwjweaxy7TND3HcRZbfC6X8xVPVQlGy7WxVWlO5XRXFXm6EZmrQuSXYyPE3SiVoEhE6Wyr0u2rumO6zv%2B21AFdQAswC1wCMuUCXCmyWQus103Qg8qlDO0lxwOb%2Fl4FiK3AB3VS%2FuKKLtK%2FgbeAnwG%2FvUODuRw%2FFrR0H1UC75fwu8oJ%2FhFsW5VIG%2FBUgEIN6Y65O4AHu4Ap0zQ9y7LEcZyb9lRBUHQcRyzL8unZVBW5bFWAvAp%2BhDQ2g4F47dUYtlU6obXA54DnVdFLekjUGGifh4AFy7LEdV3xj3X9I66m0QZpGm2QrsOd0j%2B%2BU0bSw5KZzYjrun6HWlAd961i4FfCj0aN1Usau%2Bc1lmuXPFwvAEumUut7tQQvAb%2FXb%2FT0bCAej9cODg7yt%2Bm%2F8q2%2F7OUHZ76PnZ1k2p0mJzlykmPancbOTnL0whHs7CQfb%2B5mx2d3sH79%2BtCRI0c6FeaOr9ICrIQfLvA%2B8BGNXxi4R6HrisJVUWrxAVW2oMFf0Aczim8o3kV6enowDIPjF9%2Fk%2BMU3S3rrjzMMg56eHr%2BxP7qKFbASfojG6kpeDGs1tiW53RxwWT%2Bin5q8w4xpQK5evQpAR30H7ZH2khNvj7TTUd8BgD4rqmu1ZKX8qNeY%2BfHz4zlXDgT5E8tpCTUq7XSBC4Euv8227TV9fX1E73%2BYtvo27BmbS9cvFVTY3bSRFza9yOcf6Gfmygy7d%2B%2Fm%2FPnzF4DvrsBLhnJlJfwIKXxv1PheAE4qK6p4H9AGbNKTuhngBPBPXYRe4IemaT5kWZbR19fHNbmGnZ1k4r3U4glDR30Hm5qjbGjsImJEOHbsGHv27JFz5869o0eFq01Jq%2BmHAXwI6FFKagMTgHM7GzFDS%2BoeLSMv7zjzC9x4Y7gxFovVDAwMEI1GaWlpWSzRVCrFwYMH%2FXfxZ4AfAa8B%2F7lDaGg1%2FQgp43lfK0yqtRMuJa3ceKe5DfgYsCYAZ2ngD8CfAkzqTpW7xY%2F%2FSznyX%2FVeUb2kVmX4AAAAAElFTkSuQmCC');
}
/* lines six to nine are the nose
(note these are scarcely changed from the test as border anti-aliasing
quickly differs) */
.nose
{
width: 12em;
height: 4em;
margin-left: 0;
border-width: 0 1em;
}
.nose > div
{
height: 0;
padding: 1em 1em 3em;
background: yellow;
}
.nose div div
{
width: 2em;
height: 2em;
margin-left: 4em;
background: red;
}
.nose div:hover div:before
{
border-bottom-color: blue;
}
.nose div:hover div:after
{
border-top-color: blue;
}
.nose div div:before
{
display: block;
height: 0;
content: '';
border-width: 1em;
border-style: none solid solid;
border-color: red yellow black yellow;
}
.nose div div:after
{
display: block;
height: 0;
content: '';
border-width: 1em;
border-style: solid solid none;
border-color: black yellow red yellow;
}
/* lines ten and eleven are the smile */
.ten
{
width: 10em;
margin-left: 1em;
border-width: 0 1em;
}
.ten div
{
width: 6em;
height: 1em;
margin-left: 1em;
border: solid black;
border-width: 0 1em;
background: transparent;
}
.eleven
{
width: 10em;
margin-left: 1em;
border-width: 0 1em;
}
.eleven div
{
width: 6em;
height: 1em;
margin-left: 2em;
background: black;
}
/* bottom of the face */
.twelve
{
width: 8em;
margin-left: 2em;
border-width: 0 1em;
}
.thirteen
{
width: 4em;
margin-left: 3em;
border-width: 0 2em;
}
.fourteen
{
width: 0;
margin-left: 5em;
border-width: 0 2em;
}
</style>
</head>
<body>
<h2 id="top">Hello World!</h2>
<div class="picture">
<div class="line one"></div>
<div class="line two"></div>
<div class="line three"></div>
<div class="eyes"><div class=lower></div><div class=upper></div><div class=img></div></div>
<div class="line nose"><div><div></div></div></div>
<div class="line ten"><div></div></div>
<div class="line eleven"><div></div></div>
<div class="line twelve"></div>
<div class="line thirteen"></div>
<div class="line fourteen"></div>
</div>
</body>
</html>