Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>
<title>CSS Test: :first-letter</title>
<link rel="author" title="Boris Zbarsky" href="mailto:bzbarsky@mit.edu" />
<link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" />
<link rel="match" href="first-letter-dynamic-002-ref.xht"/>
<meta name="flags" content="dom" />
<script type="text/javascript">
function boom1()
{
initFuzzerSpecific();
setTextContent(stylesheets[1], "*:first-letter { }");
setTextContent(stylesheets[2], "*:before { counter-reset: chicken; }");
document.body.offsetWidth;
boom2();
}
function boom2()
{
setTextContent(stylesheets[3], "#q2:first-letter { content: 'generated'; }");
setTextContent(stylesheets[1], "");
setTextContent(stylesheets[4], "#q2 { quotes: '&lt;1&gt;' '&lt;/1&gt;'; }");
document.body.offsetWidth;
boom3();
}
function boom3()
{
document.getElementById("p2").style.counterReset = "egg";
setTextContent(stylesheets[1], "*:first-letter { }");
}
function setTextContent(n, t) { n.textContent = t; }
var stylesheets = [];
function initFuzzerSpecific()
{
var myStylesheetHolder = document.getElementsByTagName("head")[0];
for (var i = 0; i &lt; 25; ++i) {
var s = document.createElementNS("http://www.w3.org/1999/xhtml", 'style');
s.style.display = "none";
myStylesheetHolder.appendChild(s);
stylesheets.push(s);
}
}
</script>
</head>
<body>
<p><q>Foo</q></p>
<p id="p2"><q id="q2">0</q></p>
<script type="text/javascript">
document.body.offsetWidth;
boom1();
</script>
</body></html>