| OLD | NEW |
| (Empty) |
| 1 <?xml version="1.0" encoding="UTF-8"?> | |
| 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/x
html1/DTD/xhtml1-strict.dtd"> | |
| 3 <html xmlns="http://www.w3.org/1999/xhtml"> | |
| 4 <head> | |
| 5 <title>CSS Test: @viewport constrained - max-zoom affecting width.</title> | |
| 6 <link rel="author" title="Rune Lillesveen" href="mailto:rune@opera.com"/> | |
| 7 <link rel="help" href="http://www.w3.org/TR/css-device-adapt/#constraining-pro
cedure"/> | |
| 8 <meta name="flags" content="visual scroll dom" /> | |
| 9 <meta name="assert" content="Setting max-zoom in @viewport to 50% affect width
if zoom is auto because of step 10 in the constraining procedure."/> | |
| 10 <script src="../../../resources/testharness.js" type="text/javascript" /> | |
| 11 <script src="../../../resources/testharnessreport.js" type="text/javascript" /
> | |
| 12 <style type="text/css"><![CDATA[ | |
| 13 body { margin: 0; } | |
| 14 html, body, #test { width: 100%; height: 100%; } | |
| 15 #log { padding: 1em; display: none; } | |
| 16 /* Reset viewport values to initial values to ignore UA stylesheet. */ | |
| 17 @-webkit-viewport { | |
| 18 width: auto; | |
| 19 height: auto; | |
| 20 zoom: auto; | |
| 21 min-zoom: auto; | |
| 22 max-zoom: auto; | |
| 23 user-zoom: zoom; | |
| 24 orientation: auto; | |
| 25 resolution: auto; | |
| 26 } | |
| 27 ]]></style> | |
| 28 <style type="text/css"><![CDATA[ | |
| 29 /* CSS for the test below. */ | |
| 30 @-webkit-viewport { max-zoom: 50% } | |
| 31 /* Set root element font-size to something different from the initial | |
| 32 font-size to make sure 'rem' and 'em' for @viewport is based on the | |
| 33 initial font-size, not the root element font-size. */ | |
| 34 html { font-size: 2rem; } | |
| 35 body { font-size: 0.5rem; } | |
| 36 ]]></style> | |
| 37 <script type="text/javascript"><![CDATA[ | |
| 38 var test = async_test("CSS Test: @viewport constrained - max-zoom affecting w
idth."); | |
| 39 window.onload = function(){ | |
| 40 | |
| 41 var testStyleSheet = document.styleSheets.item(1); | |
| 42 | |
| 43 /* Disable the stylesheet that contains the @viewport to test. */ | |
| 44 testStyleSheet.disabled = true; | |
| 45 | |
| 46 /* Initialize an object to store viewport values to be used by the test | |
| 47 asserts. */ | |
| 48 var viewport = new Object(); | |
| 49 | |
| 50 /* An element with the same size as the initial containing block. */ | |
| 51 var testElm = document.getElementById("test"); | |
| 52 | |
| 53 /* Retrieve the initial viewport values before applying the @viewport to | |
| 54 test. */ | |
| 55 viewport.initialWidth = testElm.offsetWidth; | |
| 56 viewport.initialHeight = testElm.offsetHeight; | |
| 57 viewport.fontSize = parseInt(getComputedStyle(testElm, "").fontSize); | |
| 58 | |
| 59 /* Enable the stylesheet that contains the @viewport to test. */ | |
| 60 testStyleSheet.disabled = false; | |
| 61 | |
| 62 /* Retrieve the actual viewport values for the test. */ | |
| 63 viewport.actualWidth = testElm.offsetWidth; | |
| 64 viewport.actualHeight = testElm.offsetHeight; | |
| 65 viewport.zoom = viewport.initialWidth / window.innerWidth; | |
| 66 | |
| 67 /* Check viewport values. */ | |
| 68 test.step(function(){ | |
| 69 assert_equals(viewport.actualWidth, 2*viewport.initialWidth); | |
| 70 }); | |
| 71 | |
| 72 /* Finished. Show the results. */ | |
| 73 test.done(); | |
| 74 testStyleSheet.disabled = true; | |
| 75 document.getElementById("log").style.display = "block"; | |
| 76 } | |
| 77 ]]></script> | |
| 78 </head> | |
| 79 <body> | |
| 80 <div id="test"> | |
| 81 <div id="log"></div> | |
| 82 </div> | |
| 83 </body> | |
| 84 </html> | |
| OLD | NEW |