| <!DOCTYPE html> | 
 | <meta charset="utf-8"> | 
 | <title>CSSOM: getComputedStyle property order</title> | 
 | <link rel="help" href="https://drafts.csswg.org/cssom/#dom-window-getcomputedstyle"> | 
 | <link rel="author" title="Oriol Brufau" href="mailto:obrufau@igalia.com"> | 
 | <meta name="assert" content="This test checks that in a computed style, properties are sorted in lexicographical order." /> | 
 | <script src=/resources/testharness.js></script> | 
 | <script src=/resources/testharnessreport.js></script> | 
 | <script> | 
 | test(function() { | 
 |   const properties = [...getComputedStyle(document.documentElement)]; | 
 |   const sorted = properties.slice().sort(function(a,b) { | 
 |     if (a === b) { | 
 |       assert_unreached("There shouldn't be repeated properties"); | 
 |       return 0; | 
 |     } | 
 |     // Sort vendor-prefixed properties after standard ones | 
 |     if (a.startsWith("-") != b.startsWith("-")) { | 
 |       return b.startsWith("-") ? -1 : 1; | 
 |     } | 
 |     // Sort with lexicographical order | 
 |     return a < b ? -1 : 1; | 
 |   }); | 
 |   assert_array_equals(properties, sorted); | 
 | }, "Computed style properties should be sorted lexicographically"); | 
 | </script> |