<!DOCTYPE html> <html> <head> <meta charset=utf-8> <title>Test parsing behaviour of backslash just before EOF</title> <link rel="author" title="Cameron McCormack" href="mailto:cam@mcc.id.au"> <meta name="flags" content=""> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> </head> <body> <style>#a::before { content: "ab\</style> <style>#b { background-image: url("ab\</style> <style>#c { background-image: url(ab\</style> <style>#d { counter-reset: ab\</style> <style> #a-ref::before { content: "ab"; } #b-ref { background-image: url("ab"); } #c-ref { background-image: url(ab�); } #d-ref { counter-reset: ab�; } </style> <div style="display: none"> <div id="a"></div> <div id="b"></div> <div id="c"></div> <div id="d"></div> <div id="a-ref"></div> <div id="b-ref"></div> <div id="c-ref"></div> <div id="d-ref"></div> </div> <script> var a = document.getElementById("a"); var b = document.getElementById("b"); var c = document.getElementById("c"); var d = document.getElementById("d"); var a_ref = document.getElementById("a-ref"); var b_ref = document.getElementById("b-ref"); var c_ref = document.getElementById("c-ref"); var d_ref = document.getElementById("d-ref"); test(function() { assert_equals(window.getComputedStyle(a, ":before").content, window.getComputedStyle(a_ref, ":before").content); }, "test backslash before EOF inside a string"); test(function() { assert_equals(window.getComputedStyle(b, "").backgroundImage, window.getComputedStyle(b_ref, "").backgroundImage); }, "test backslash before EOF inside a url(\"\")"); test(function() { assert_equals(window.getComputedStyle(c, "").backgroundImage, window.getComputedStyle(c_ref, "").backgroundImage); }, "test backslash before EOF inside a url()"); test(function() { assert_equals(window.getComputedStyle(d, "").counterReset, window.getComputedStyle(d_ref, "").counterReset); }, "test backslash before EOF outside a string"); </script> </body> </html>