<!DOCTYPE html>
<div id="target"></div>
<pre id="output"></pre>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
}
var style = target.style;
function showFontLonghands(fontValue)
{
output.textContent += 'Longhands for font: ' + fontValue + '\n';
style.font = '';
style.font = fontValue;
for (var i = 0; i < style.length; i++) {
output.textContent += style[i];
output.textContent += ': ' + style.getPropertyValue(style[i]);
output.textContent += '\n';
}
output.textContent += '\n';
}
showFontLonghands('12px monospace');
showFontLonghands('12px/24px serif');
showFontLonghands('normal 12px serif');
showFontLonghands('normal normal 12px serif');
showFontLonghands('normal normal normal 12px serif');
showFontLonghands('italic small-caps 12px/24px serif');
showFontLonghands('italic bold 12px/24px serif');
showFontLonghands('small-caps bold 14px/28px Arial, sans-serif');
showFontLonghands('italic small-caps bold 14px/28px Arial, sans-serif');
// System fonts aren't resolved at parse time, so the longhands serialize as empty strings.
// Platform specific system font computed styles are covered in fast/css/css2-system-fonts.html.
showFontLonghands('caption');
showFontLonghands('icon');
showFontLonghands('menu');
showFontLonghands('message-box');
showFontLonghands('small-caption');
showFontLonghands('status-bar');
showFontLonghands('-webkit-mini-control');
showFontLonghands('-webkit-small-control');
showFontLonghands('-webkit-control');
// Invalid values should yield no longhands.
showFontLonghands('italic small-caps bold 12px/24px');
showFontLonghands('italic small-caps bold 12px');
showFontLonghands('italic small-caps bold /12px serif');
showFontLonghands('italic small-caps small-caps 12px serif');
showFontLonghands('italic italic small-caps bold 12px serif');
showFontLonghands('12px/italic serif');
showFontLonghands("caption italic");
showFontLonghands("icon 12px");
showFontLonghands("icon 12px serif");
showFontLonghands("menu italic 12px");
</script>