scope-import-multiple.tentative.html (1119B)
1 <!DOCTYPE html> 2 <title>@import scope(), same stylesheet imported multiple times</title> 3 <link rel="help" href="https://github.com/w3c/csswg-drafts/issues/7348"> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <style> 7 @import url("resources/scope-imported.css") scope((.scope1)); 8 @import url("resources/scope-imported.css") scope((.scope2)); 9 </style> 10 <main id=main> 11 <div class=scope1> 12 <div class=x>Inside</div> 13 </div> 14 <div class=scope2> 15 <div class=x>Inside</div> 16 </div> 17 <div class=x>Outside</div> 18 </main> 19 <script> 20 test(() => { 21 let e1 = main.querySelector('.scope1 > .x'); 22 let e2 = main.querySelector('.scope2 > .x'); 23 assert_equals(getComputedStyle(e1).getPropertyValue('--x'), '1'); 24 assert_equals(getComputedStyle(e2).getPropertyValue('--x'), '1'); 25 }, 'A stylesheet may be imported multiple times, and scoped differently'); 26 27 test(() => { 28 let e = main.querySelector('main > .x'); 29 assert_equals(getComputedStyle(e).getPropertyValue('--x'), ''); 30 }, 'Scope-imported rule does not apply outside of scope'); 31 </script>