Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS-fonts: first available font and the ch unit</title>
<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net">
<link rel="match" href="first-available-font-002-ref.html">
<meta name="assert" content="Fonts that do not include the U+0020 character are not considered the first available font (used to determine the ch unit), even when at the start of the font list.">
<style>
/* Two arbitrary fonts with different metrics */
@font-face {
font-family: 'A-no-space';
font-style: normal;
font-weight: 400;
src: url(/fonts/Revalia.woff) format('woff');
unicode-range: U+0061; /* Not including U+0020, so it cannot be the first available font*/
}
@font-face {
font-family: 'B';
font-style: normal;
font-weight: 400;
src: url(/fonts/AD.woff) format('woff');
}
div {
width: 1ch;
height: 0.5ch;
font-size: 200px;
background: blue;
position: absolute;
}
#t1 { font-family: 'B', sans-serif; margin-top: 0.5ch; } /* half a square, shifted down */
#t2 { font-family: 'A-no-space', 'B', monospace; } /* Should use B as the first available font, and therefore be the same size as t1 */
/* Both elements are using different generic fallback fonts, so that they end up being sized differently if web-fonts fail to load. */
</style>
<p>Test passes if there is <strong>a blue square</strong> below.
<div id=t1></div>
<div id=t2></div>