| <!DOCTYPE html> |
| <html> |
| <head> |
| <style> |
| |
| #outer { |
| overflow: auto; |
| width: 200px; |
| height: 200px; |
| } |
| |
| #inner { |
| position: relative; |
| height: 400px; |
| } |
| |
| #inner:focus { |
| background-color: lightblue; |
| } |
| |
| #inner:active { |
| background-color: blue; |
| } |
| |
| #h, #h2 { |
| background: rgba(255, 255, 255, 0); |
| } |
| |
| #h { |
| position: absolute; |
| height: 200px; |
| width: 200px; |
| } |
| |
| #h2 { |
| position: absolute; |
| top: 200px; |
| height: 200px; |
| width: 100%; |
| } |
| |
| #h:hover, |
| #h2:hover { |
| background: pink; |
| } |
| |
| #h:active, |
| #h2:active { |
| background: red; |
| } |
| |
| pre { |
| position: absolute; |
| left: 250px; |
| top: 80px; |
| } |
| |
| </style> |
| </head> |
| <body> |
| |
| <p>Manual test for <a href="https://bugs.webkit.org/show_bug.cgi?id=38129">bug 38129</a></p> |
| |
| <p>Click the div below and press the context menu key on your keyboard (Shift+F10 also works)</p> |
| |
| <div id=outer> |
| <div id=inner tabindex=0> |
| <div id=h2></div> |
| </div> |
| </div> |
| |
| <div id=h></div> |
| |
| <pre></pre> |
| |
| <script> |
| |
| function cs(el) |
| { |
| if (window.getComputedStyle) |
| return window.getComputedStyle(el, ''); |
| return el.currentStyle; |
| } |
| |
| document.addEventListener('contextmenu', function(e) |
| { |
| var inner = document.querySelector('#inner'); |
| var outer = document.querySelector('#outer'); |
| var h = document.querySelector('#h'); |
| var h2 = document.querySelector('#h2'); |
| var result = []; |
| |
| result.push(e.target, document.querySelector('#inner')); |
| result.push(cs(inner, '').backgroundColor, 'rgb(0, 0, 255)'); |
| result.push(cs(h, '').backgroundColor, 'rgba(255, 255, 255, 0)'); |
| result.push(cs(h2, '').backgroundColor, 'rgba(255, 255, 255, 0)'); |
| |
| var s = ''; |
| for (var i = 0; i < result.length; i += 2) { |
| s += result[i] + ' == ' + result[i + 1] + ' - ' + |
| (result[i] == result[i + 1] ? 'PASS' : 'FAIL') + '<br>'; |
| } |
| |
| document.querySelector('pre').innerHTML = s; |
| |
| return true; |
| }, false); |
| |
| </script> |
| |
| </body> |
| </html> |