<head>
    <style>
        @font-face {
            font-family: 'remote';
            src: url(../../resources/Ahem.ttf);
        }
    
        div { width: 100px; height: 100px; background-color: red; font-family: 'remote'; font-size: 20px; color: green; }
    </style>
</head>
<body onload="finished()">
    <div>
        FAIL_<br>
        XXXXX<br>
        XXXXX<br>
        XXXXX<br>
        _FAIL<br>
    </div>
    <script>
        if (window.testRunner)
            testRunner.waitUntilDone();

        // Kick off loading of the font
        document.body.offsetTop;

        function finished()
        {
            if (window.testRunner)
                testRunner.notifyDone();
        }
    </script>
</body>
