<html xmlns="http://www.w3.org/1999/xhtml"> <head> <!-- Test that suppression works (or is turned off) for XBL content --> <bindings xmlns="http://www.mozilla.org/xbl"> <binding id="before"> <content>Hello<children/></content> </binding> <binding id="after"> <content><children/>Kitty</content> </binding> <binding id="empty1"> <content><div xmlns="http://www.w3.org/1999/xhtml">Hello</div><children/></content> </binding> <binding id="empty2"> <content><children/><div xmlns="http://www.w3.org/1999/xhtml">Kitty</div></content> <implementation> <constructor> // We used to do this in an onload handler, but getAnonymousNodes is no // longer accessible to content, and we can't use SpecialPowers in // reftests. So we enable XBL scopes and take advantage of the fact that XBL // scopes can access these functions. We apply this binding // programatically to make absolutely sure this constructor runs after all the // other bindings have been set up. document.body.offsetHeight; document.getAnonymousNodes(document.getElementById("d3"))[0].style.display = 'inline'; document.getAnonymousNodes(document.getElementById("d4"))[2].style.display = 'inline'; </constructor> </implementation> </binding> </bindings> <style> body > div { border:1px solid black; margin:1em; font-family:sans-serif; letter-spacing:2px; } #d1 { -moz-binding:url(#before); } #d2 { -moz-binding:url(#after); } #d3 { -moz-binding:url(#empty1); } </style> <script> function loaded() { document.getElementById('d4').style.MozBinding = "url(#empty2)"; } </script> </head> <body onload="loaded()"> <div id="d1"> <span>Kitty</span></div> <div id="d2"><span>Hello</span> </div> <div id="d3"> <span>Kitty</span></div> <div id="d4"><span>Hello</span> </div> </body> </html>