- From: Rune Lillesveen via cvs-syncmail <cvsmail@w3.org>
- Date: Tue, 03 May 2011 13:01:38 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/css-device-adapt
In directory hutz:/tmp/cvs-serv27003
Modified Files:
Overview.html Overview.src.html
Log Message:
Let computed value of 'auto' for 'zoom' become 'auto' as used value.
Also added a section on how to handle 'auto' as used value for 'zoom'.
Index: Overview.html
===================================================================
RCS file: /sources/public/csswg/css-device-adapt/Overview.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Overview.html 2 Nov 2010 21:00:41 -0000 1.2
+++ Overview.html 3 May 2011 13:01:36 -0000 1.3
@@ -17,8 +17,7 @@
<h1>CSS Device Adaptation</h1>
- <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 2 November
- 2010</h2>
+ <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 3 May 2011</h2>
<dl>
<dt>This version:
@@ -43,7 +42,7 @@
<!--begin-copyright-->
<p class=copyright><a
href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright"
- rel=license>Copyright</a> © 2010 <a
+ rel=license>Copyright</a> © 2011 <a
href="http://www.w3.org/"><acronym title="World Wide Web
Consortium">W3C</acronym></a><sup>®</sup> (<a
href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute
@@ -166,6 +165,11 @@
class=css>@viewport</code> properties</a>
</ul>
+ <li><a href="#handling-auto-zoom"><span class=secno>10. </span>Handling
+ ‘<code class=css title="auto!!zoom">auto</code>’ for
+ ‘<code class=property title="zoom!!property">zoom</code>’</a>
+
+
<li class=no-num><a href="#acknowledgments">Acknowledgments</a>
<li class=no-num><a href="#references">References</a>
@@ -287,8 +291,8 @@
<div class=example>
<p>This example sets the viewport to fit the width of the device. Note
- that it is enough to set the width as the zoom and height will be
- resolved from the width.</p>
+ that it is enough to set the width as the height will be resolved from
+ the width.</p>
<pre><!--
-->@viewport {
@@ -784,8 +788,13 @@
<dt>‘<code class=css><dfn id=auto0
title="auto!!zoom">auto</dfn></code>’
- <dd>The used value is calculated from the other property values according
- to the <a href="#constraining-procedure">constraining procedure</a>.
+ <dd>The zoom factor is UA-dependent. The UA may use the size of the area
+ of the canvas on which the document is rendered to find that initial zoom
+ factor. See <a href="#handling-auto-zoom">this section</a> for a proposed
+ way of handling ‘<a href="#auto0"><code class=css
+ title="auto!!zoom">auto</code></a>’ values for ‘<a
+ href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’.
<dt><var><number></var>
@@ -852,8 +861,16 @@
</table>
<p>Specifies the smallest allowed zoom factor. It is used as input to the
- <a href="#constraining-procedure">constraining procedure</a>, but also to
- limit the allowed zoom factor that can be set through user interaction.
+ <a href="#constraining-procedure">constraining procedure</a> to constrain
+ non-‘<a href="#auto0"><code class=css
+ title="auto!!zoom">auto</code></a>’ ‘<a href="#zoom"><code
+ class=property title="zoom!!property">zoom</code></a>’ values, but
+ also to limit the allowed zoom factor that can be set through user
+ interaction. The UA should also use this value as a constraint when
+ choosing an actual zoom factor when the used value of ‘<a
+ href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’ is ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’.
<p>Values have the following meanings:
@@ -861,8 +878,10 @@
<dt>‘<code class=css><dfn id=auto1
title="auto!!min-zoom">auto</dfn></code>’
- <dd>The used value is calculated from the other property values according
- to the <a href="#constraining-procedure">constraining procedure</a>.
+ <dd>The lower limit on zoom factor is UA dependant. There will be no
+ minimum value constraint on the ‘<a href="#zoom"><code
+ class=property title="zoom!!property">zoom</code></a>’ property
+ used in the <a href="#constraining-procedure">constraining procedure</a>
<dt><var><number></var>
@@ -925,8 +944,16 @@
</table>
<p>Specifies the largest allowed zoom factor. It is used as input to the <a
- href="#constraining-procedure">constraining procedure</a>, but also to
- limit the allowed zoom factor that can be set through user interaction.
+ href="#constraining-procedure">constraining procedure</a> to constrain
+ non-‘<a href="#auto0"><code class=css
+ title="auto!!zoom">auto</code></a>’ ‘<a href="#zoom"><code
+ class=property title="zoom!!property">zoom</code></a>’ values, but
+ also to limit the allowed zoom factor that can be set through user
+ interaction. The UA should also use this value as a constraint when
+ choosing an actual zoom factor when the used value of ‘<a
+ href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’ is ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’.
<p>Values have the following meanings:
@@ -934,8 +961,10 @@
<dt>‘<code class=css><dfn id=auto2
title="auto!!max-zoom">auto</dfn></code>’
- <dd>The used value is calculated from the other property values according
- to the <a href="#constraining-procedure">constraining procedure</a>.
+ <dd>The upper limit on zoom factor is UA dependant. There will be no
+ maximum value constraint on the ‘<code
+ class=property>zoom</code>’ property used in the <a
+ href="#constraining-procedure">constraining procedure</a>
<dt><var><number></var>
@@ -1095,10 +1124,8 @@
<p>For the procedure below:
- <p>Computed values refer to the computed values from the property
- definitions. Other values refer to the values resolved/constrained to at
- that point in the procedure. The values are initially resolved to their
- computed values.
+ <p>Properties refer to the values resolved/constrained to at that point in
+ the procedure. They are initially resolved to their computed values.
<p><code class=index id=width0 title="width!!resolved">width</code> and
<code class=index id=height0 title="height!!resolved">height</code> refer
@@ -1195,45 +1222,23 @@
MAX(min-zoom, max-zoom)</code>
</ol>
- <h4 class="no-num no-toc" id=resolve-zoom-value>Resolve <code
- title="zoom!!resolved">zoom</code> value</h4>
-
- <ol start=5>
- <li>If the computed value of ‘<a href="#zoom"><code class=property
- title="zoom!!property">zoom</code></a>’ is ‘<a
- href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’
- and <code title="width!!resolved">width</code> is not ‘<a
- href="#auto"><code class=css title="auto!!length">auto</code></a>’,
- set <code>zoom = (initial-width / width)</code>
-
- <li>If <code title="zoom!!resolved">zoom</code> is ‘<a
- href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’,
- set <code>zoom = 1</code>
-
- <li>If the computed value of ‘<a href="#zoom"><code class=property
- title="zoom!!property">zoom</code></a>’ is ‘<a
- href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’
- and <code title="height!!resolved">height</code> is not ‘<a
- href="#auto"><code class=css title="auto!!length">auto</code></a>’,
- set <code>zoom = MAX(zoom, (initial-height / height))</code>
- </ol>
-
<h4 class="no-num no-toc"
id=constrain-zoom-value-to-the-min-zoom-max>Constrain <code
title="zoom!!resolved">zoom</code> value to the <code>[min-zoom,
max-zoom]</code> range</h4>
- <ol start=8>
- <li>Set <code>zoom = MAX(min-zoom, MIN(max-zoom, zoom))</code>
+ <ol start=5>
+ <li>If <code title="zoom!!resolved">zoom</code> is not ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’,
+ set <code>zoom = MAX(min-zoom, MIN(max-zoom, zoom))</code>
</ol>
<h4 class="no-num no-toc" id=resolve-width-value>Resolve <code
title="width!!resolved">width</code> value</h4>
- <ol start=9>
- <li>If <code title="width!!resolved">width</code> and the computed value
- of ‘<a href="#zoom"><code class=property
- title="zoom!!property">zoom</code></a>’ are both ‘<code
+ <ol start=6>
+ <li>If <code title="width!!resolved">width</code> and <code
+ title="zoom!!resolved">zoom</code> are both ‘<code
class=css>auto</code>’, set <code>width = initial-width</code>
<li>If <code title="width!!resolved">width</code> is ‘<code
@@ -1250,7 +1255,7 @@
<h4 class="no-num no-toc" id=resolve-height-value>Resolve <code
title="height!!resolved">height</code> value</h4>
- <ol start=12>
+ <ol start=9>
<li>If <code title="height!!resolved">height</code> is ‘<code
class=css>auto</code>’, set <code>height = width * (initial-height
/ initial-width)</code>
@@ -1260,12 +1265,20 @@
id=extend-width-and-height-to-fill-the-wind>Extend <code
title="width!!resolved">width</code> and <code
title="height!!resolved">height</code> to fill the window/viewing area for
- the resolved <code title="zoom!!resolved">zoom</code></h4>
+ the specified <code title="zoom!!resolved">zoom</code></h4>
- <ol start=13>
- <li>Set <code>width = MAX(width, (initial-width / zoom))</code>
+ <ol start=10>
+ <li>If <code title="zoom!!resolved">zoom</code> or <code
+ title="max-zoom!!resolved">max-zoom</code> is not ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’,
+ set <code>width = MAX(width, (initial-width / MIN(zoom,
+ max-zoom)))</code>
- <li>Set <code>height = MAX(height, (initial-height / zoom))</code>
+ <li>If <code title="zoom!!resolved">zoom</code> or <code
+ title="max-zoom!!resolved">max-zoom</code> is not ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’,
+ set <code>height = MAX(height, (initial-height / MIN(zoom,
+ max-zoom)))</code>
</ol>
<div class=example>
@@ -1458,8 +1471,8 @@
<p>This will for instance allow UAs without zooming capabilities to
conform and still have interoperable implementations when it comes to
viewport dimensions. It will also allow the UA to choose a different
- zoom factor if the content overflows the <a
- href="#actual-viewport">actual viewport</a>.
+ zoom factor when content overflows the <a href="#actual-viewport">actual
+ viewport</a>.
<li>
<p>Support for the ‘<a href="#user-zoom"><code
@@ -1491,7 +1504,7 @@
<!-- -->}<!--
--></pre>
- <p class=note>Note that these values might not fit well with any UA. For
+ <p class=note>Note that these values might not fit well with all UAs. For
instance, with a min-zoom of 0.25 you will be able to fit the whole width
of the document inside the window for widths up to 1280px on a 320px wide
device like the iPhone, but only 960px if you have 240px display.
@@ -1744,6 +1757,38 @@
--></pre>
</div>
+ <h2 id=handling-auto-zoom><span class=secno>10. </span>Handling ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’
+ for ‘<a href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’</h2>
+
+ <p><em>This section is not normative.</em>
+
+ <p>This section presents one way of picking an actual value for the
+ ‘<a href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’ property when the used value
+ is ‘<a href="#auto0"><code class=css
+ title="auto!!zoom">auto</code></a>.
+
+ <p>Given an <a href="#initial-viewport">initial viewport</a> with size
+ <code>(initial-width, initial-height)</code>, and a finite region within
+ the <a href="http://www.w3.org/TR/CSS21/intro.html#canvas">canvas</a>
+ where the formatting structure is rendered <code>(rendered-width,
+ rendered-height)</code>. That region is at least as large as the <a
+ href="#actual-viewport">actual viewport</a>.
+
+ <p>Then, if the used value of ‘<a href="#zoom"><code class=property
+ title="zoom!!property">zoom</code></a>’ is ‘<a
+ href="#auto0"><code class=css title="auto!!zoom">auto</code></a>’,
+ let the actual zoom factor be:
+
+ <pre>
+<!---->zoom = MAX(initial-width / rendered-width, initial-height / rendered-height)<!--
+ --></pre>
+
+ <p>The actual zoom factor should also be further limited by the [min-zoom,
+ max-zoom] range.
+
<h2 class=no-num id=acknowledgments>Acknowledgments</h2>
<h2 class=no-num id=references>References</h2>
@@ -1759,10 +1804,10 @@
<dt id=CSS21>[CSS21]
<dd>Bert Bos; et al. <a
- href="http://www.w3.org/TR/2009/CR-CSS2-20090908"><cite>Cascading Style
- Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a> 8 September
- 2009. W3C Candidate Recommendation. (Work in progress.) URL: <a
- href="http://www.w3.org/TR/2009/CR-CSS2-20090908">http://www.w3.org/TR/2009/CR-CSS2-20090908</a>
+ href="http://www.w3.org/TR/2009/CR-CSS2-20090423"><cite>Cascading Style
+ Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a> 23
+ April 2009. W3C Candidate Recommendation. (Work in progress.) URL: <a
+ href="http://www.w3.org/TR/2009/CR-CSS2-20090423">http://www.w3.org/TR/2009/CR-CSS2-20090423</a>
</dd>
<!---->
@@ -1778,7 +1823,7 @@
<dt id=CSS3VAL>[CSS3VAL]
- <dd>Chris Lilley; Håkon Wium Lie. <a
+ <dd>Håkon Wium Lie; Chris Lilley. <a
href="http://www.w3.org/TR/2006/WD-css3-values-20060919"><cite>CSS3
Values and Units.</cite></a> 19 September 2006. W3C Working Draft. (Work
in progress.) URL: <a
@@ -1788,11 +1833,11 @@
<dt id=MEDIAQ>[MEDIAQ]
- <dd>Daniel Glazman; et al. <a
- href="http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727"><cite>Media
+ <dd>Håkon Wium Lie; et al. <a
+ href="http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727/"><cite>Media
Queries.</cite></a> 27 July 2010. W3C Candidate Recommendation. (Work in
progress.) URL: <a
- href="http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727">http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727</a>
+ href="http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727/">http://www.w3.org/TR/2010/CR-css3-mediaqueries-20100727/</a>
</dd>
<!---->
</dl>
Index: Overview.src.html
===================================================================
RCS file: /sources/public/csswg/css-device-adapt/Overview.src.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Overview.src.html 2 Nov 2010 20:58:06 -0000 1.2
+++ Overview.src.html 3 May 2011 13:01:36 -0000 1.3
@@ -141,9 +141,9 @@
</p>
<div class="example">
- <p>This example sets the viewport to fit the width of the device.
- Note that it is enough to set the width as the zoom and height
- will be resolved from the width.</p>
+ <p>This example sets the viewport to fit the width of the device. Note
+ that it is enough to set the width as the height will be resolved from
+ the width.</p>
<pre><!--
-->@viewport {
<!-- --> width: device-width;
@@ -153,8 +153,8 @@
<h3>Syntax</h3>
- <p>The syntax for the <code class="css">@viewport</code> rule is as follows (using
- the notation from the <a
+ <p>The syntax for the <code class="css">@viewport</code> rule is as follows
+ (using the notation from the <a
href="http://www.w3.org/TR/CSS21/grammar.html">Grammar appendix</a> of CSS
2.1 [[!CSS21]]):</p>
@@ -615,8 +615,12 @@
<dl>
<dt>‘<code class="css"><dfn title="auto!!zoom">auto</dfn></code>’</dt>
- <dd>The used value is calculated from the other property values according
- to the <a href="#constraining-procedure">constraining procedure</a>.</dd>
+ <dd>The zoom factor is UA-dependent. The UA may use the size of the area
+ of the canvas on which the document is rendered to find that initial
+ zoom factor. See <a href="#handling-auto-zoom">this section</a> for a
+ proposed way of handling
+ ‘<code class="css" title="auto!!zoom">auto</code>’ values
+ for ‘<code class="property" title="zoom!!property">zoom</code>’.</dd>
<dt><var><number></var></dt>
<dd>
@@ -682,15 +686,23 @@
</table>
<p>Specifies the smallest allowed zoom factor. It is used as input to the
- <a href="#constraining-procedure">constraining procedure</a>, but also to
- limit the allowed zoom factor that can be set through user interaction.</p>
+ <a href="#constraining-procedure">constraining procedure</a> to constrain
+ non-‘<code class="css" title="auto!!zoom">auto</code>’
+ ‘<code class="property" title="zoom!!property">zoom</code>’
+ values, but also to limit the allowed zoom factor that can be set through
+ user interaction. The UA should also use this value as a constraint when
+ choosing an actual zoom factor when the used value of
+ ‘<code class="property" title="zoom!!property">zoom</code>’ is
+ ‘<code class="css" title="auto!!zoom">auto</code>’.</p>
<p>Values have the following meanings:</p>
<dl>
<dt>‘<code class="css"><dfn title="auto!!min-zoom">auto</dfn></code>’</dt>
- <dd>The used value is calculated from the other property values
- according to the <a href="#constraining-procedure">constraining procedure</a>.</dd>
+ <dd>The lower limit on zoom factor is UA dependant. There will be no minimum
+ value constraint on the ‘<code class="property"
+ title="zoom!!property">zoom</code>’ property used in the
+ <a href="#constraining-procedure">constraining procedure</a></dd>
<dt><var><number></var></dt>
<dd>
@@ -752,15 +764,23 @@
</table>
<p>Specifies the largest allowed zoom factor. It is used as input to the
- <a href="#constraining-procedure">constraining procedure</a>, but also to
- limit the allowed zoom factor that can be set through user interaction.</p>
+ <a href="#constraining-procedure">constraining procedure</a> to constrain
+ non-‘<code class="css" title="auto!!zoom">auto</code>’
+ ‘<code class="property" title="zoom!!property">zoom</code>’
+ values, but also to limit the allowed zoom factor that can be set through
+ user interaction. The UA should also use this value as a constraint when
+ choosing an actual zoom factor when the used value of
+ ‘<code class="property" title="zoom!!property">zoom</code>’ is
+ ‘<code class="css" title="auto!!zoom">auto</code>’.</p>
<p>Values have the following meanings:</p>
<dl>
<dt>‘<code class="css"><dfn title="auto!!max-zoom">auto</dfn></code>’</dt>
- <dd>The used value is calculated from the other property values according
- to the <a href="#constraining-procedure">constraining procedure</a>.</dd>
+ <dd>The upper limit on zoom factor is UA dependant. There will be no maximum
+ value constraint on the ‘<code class="property">zoom</code>’
+ property used in the <a href="#constraining-procedure">constraining
+ procedure</a></dd>
<dt><var><number></var></dt>
<dd>
@@ -909,10 +929,8 @@
<p>For the procedure below:</p>
- <p>Computed values refer to the computed values from the property
- definitions. Other values refer to the values resolved/constrained
- to at that point in the procedure. The values are initially resolved
- to their computed values.
+ <p>Properties refer to the values resolved/constrained to at that point in
+ the procedure. They are initially resolved to their computed values.
</p>
<p><code class="index" title="width!!resolved">width</code> and
@@ -1000,43 +1018,22 @@
‘<code class="css" title="auto!!max-zoom">auto</code>’,
set <code>max-zoom = MAX(min-zoom, max-zoom)</code></li>
- <h4 class="no-num no-toc">Resolve <code title="zoom!!resolved">zoom</code>
- value</h4>
-
- <ol start="5">
- <li>If the computed value
- of ‘<code class="property" title="zoom!!property">zoom</code>’
- is ‘<code class="css" title="auto!!zoom">auto</code>’
- and <code title="width!!resolved">width</code> is not
- ‘<code class="css" title="auto!!length">auto</code>’,
- set <code>zoom = (initial-width / width)</code></li>
-
- <li>If <code title="zoom!!resolved">zoom</code> is
- ‘<code class="css" title="auto!!zoom">auto</code>’,
- set <code>zoom = 1</code></li>
-
- <li>If the computed value
- of ‘<code class="property" title="zoom!!property">zoom</code>’
- is ‘<code class="css" title="auto!!zoom">auto</code>’
- and <code title="height!!resolved">height</code> is not
- ‘<code class="css" title="auto!!length">auto</code>’,
- set <code>zoom = MAX(zoom, (initial-height / height))</code></li>
- </ol>
-
<h4 class="no-num no-toc">Constrain <code title="zoom!!resolved">zoom</code>
value to the <code>[min-zoom, max-zoom]</code> range</h4>
- <ol start="8">
- <li>Set <code>zoom = MAX(min-zoom, MIN(max-zoom, zoom))</code></li>
+ <ol start="5">
+ <li>If <code title="zoom!!resolved">zoom</code> is not
+ ‘<code class="css" title="auto!!zoom">auto</code>’,
+ set <code>zoom = MAX(min-zoom, MIN(max-zoom, zoom))</code></li>
</ol>
<h4 class="no-num no-toc">Resolve <code title="width!!resolved">width</code>
value</h4>
- <ol start="9">
- <li>If <code title="width!!resolved">width</code> and the computed value
- of ‘<code class="property" title="zoom!!property">zoom</code>’
- are both ‘<code class="css">auto</code>’, set <code>width =
+ <ol start="6">
+ <li>If <code title="width!!resolved">width</code>
+ and <code title="zoom!!resolved">zoom</code> are both
+ ‘<code class="css">auto</code>’, set <code>width =
initial-width</code></li>
<li>If <code title="width!!resolved">width</code> is
@@ -1053,7 +1050,7 @@
<h4 class="no-num no-toc">Resolve <code title="height!!resolved">height</code>
value</h4>
- <ol start="12">
+ <ol start="9">
<li>If <code title="height!!resolved">height</code> is
‘<code class="css">auto</code>’, set <code>height = width *
(initial-height / initial-width)</code></li>
@@ -1061,11 +1058,20 @@
<h4 class="no-num no-toc">Extend <code title="width!!resolved">width</code>
and <code title="height!!resolved">height</code> to fill the
- window/viewing area for the resolved <code title="zoom!!resolved">zoom</code></h4>
+ window/viewing area for the specified <code title="zoom!!resolved">zoom</code></h4>
- <ol start="13">
- <li>Set <code>width = MAX(width, (initial-width / zoom))</code></li>
- <li>Set <code>height = MAX(height, (initial-height / zoom))</code></li>
+ <ol start="10">
+ <li>If <code title="zoom!!resolved">zoom</code>
+ or <code title="max-zoom!!resolved">max-zoom</code> is not
+ ‘<code class="css"
+ title="auto!!zoom">auto</code>’, set <code>width =
+ MAX(width, (initial-width / MIN(zoom, max-zoom)))</code></li>
+ <li>If <code title="zoom!!resolved">zoom</code>
+ or <code title="max-zoom!!resolved">max-zoom</code> is not
+ ‘<code class="css"
+ title="auto!!zoom">auto</code>’, set <code>height =
+ MAX(height, (initial-height / MIN(zoom, max-zoom)))</code>
+ </li>
</ol>
<div class="example">
@@ -1245,7 +1251,7 @@
<p>This will for instance allow UAs without zooming capabilities to
conform and still have interoperable implementations when it comes to
viewport dimensions. It will also allow the UA to choose a different
- zoom factor if the content overflows the <span>actual viewport</span>.</p></li>
+ zoom factor when content overflows the <span>actual viewport</span>.</p></li>
<li><p>Support for the ‘<code class="property">user-zoom</code>’
and ‘<code class="property">orientation</code>’
properties is optional.</p></li>
@@ -1276,7 +1282,7 @@
<!-- -->}<!--
--></pre>
- <p class="note">Note that these values might not fit well with any UA. For
+ <p class="note">Note that these values might not fit well with all UAs. For
instance, with a min-zoom of 0.25 you will be able to fit the whole width
of the document inside the window for widths up to 1280px on a 320px wide
device like the iPhone, but only 960px if you have 240px display.</p>
@@ -1491,6 +1497,35 @@
--></pre>
</div>
+ <h2 id="handling-auto-zoom">Handling ‘<code class="css" title="auto!!zoom">auto</code>’
+ for ‘<code class="property" title="zoom!!property">zoom</code>’</h2>
+
+ <p><em>This section is not normative.</em></p>
+
+ <p>This section presents one way of picking an actual value for the
+ ‘<code class="property" title="zoom!!property">zoom</code>’
+ property when the used value is
+ ‘<code class="css" title="auto!!zoom">auto</code>.</p>
+
+ <p>Given an <span>initial viewport</span> with size <code>(initial-width,
+ initial-height)</code>, and a finite region within the
+ <a href="http://www.w3.org/TR/CSS21/intro.html#canvas">canvas</a> where
+ the formatting structure is rendered <code>(rendered-width,
+ rendered-height)</code>. That region is at least as large as the
+ <span>actual viewport</span>.
+
+ <p>Then, if the used value of
+ ‘<code class="property" title="zoom!!property">zoom</code>’ is
+ ‘<code class="css" title="auto!!zoom">auto</code>’, let the
+ actual zoom factor be:</p>
+
+ <pre>
+<!---->zoom = MAX(initial-width / rendered-width, initial-height / rendered-height)<!--
+ --></pre>
+
+ <p>The actual zoom factor should also be further limited by the [min-zoom,
+ max-zoom] range.</p>
+
<h2 class="no-num">Acknowledgments</h2>
Received on Tuesday, 3 May 2011 13:01:44 UTC