- From: Jacob Rossi <Jacob.Rossi@microsoft.com>
- Date: Fri, 21 Mar 2014 19:09:19 +0000
- To: "public-pointer-events@w3.org" <public-pointer-events@w3.org>, "Rick Byers (rbyers@google.com)" <rbyers@google.com>, "gnanasekar.s@samsung.com" <gnanasekar.s@samsung.com>, Douglas Schepers <schepers@w3.org>
Following up on this thread (and action 65). From: Rick Byers <rbyers@google.com> Date: Fri, 17 Jan 2014 11:17:47 -0500 > *Jacob, *do you agree that the behavior we see in IE is what we want the spec to describe (touch-action supported on <svg> elements, but not other types of SVG elements)? Yes. > *Jacob/Doug*, what's the right wording to convey this precisely? My reading of the SVG spec is that "SVG elements" includes things like <path>, etc. > > In addition, it seems IE applies touch-action on inline-block elements (which I think makes sense). My reading of the CSS spec is that inline-block isn't necessarily included with "block level elements". Is there a more precise term to encompass display: block and display: inline-block? > > What about the other display types that establish a BOX but aren't themselves BLOCKS (eg. table-row, table-cell), what's the expected behavior for them? Sorry I'm not enough of a CSS expert to know the precise terms we're looking for here (and it wasn't obvious to me from the CSS spec). I consulted with some of our CSS WG reps and also did testing to confirm IE's behavior. It looks like <svg> shouldn't be a special case. It is no different than <img>, which is a replaced inline element (not block-level) and supports touch-action. So the current spec text is incorrect. The correct definition should match that of the intersection of the height and width properties from CSS2.1 [1,2]: Applies to: all elements but non-replaced inline elements, table rows, row groups, table columns, and column groups Put another way, it applies to any element that *both* width and height apply to in CSS. Note table rows only accept height and table cols only accept width, therefore touch-action applies to neither by this definition (also cols are effectively display: none; so they were already irrelevant). This means block elements (like div), inline-block elements (like button), replaced inline elements (like img, svg, canvas, video), tables, and table cells/headers/captions are supported. But non-replaced inline elements (like span), table col/row elements, and table col/row groups are not supported. I propose we change the spec to match the applies to text above. Testing briefly [3] Chrome, it looks like the replaced inline elements (img, svg, canvas, etc) and input controls aren't supported but should be. Firefox has the same issue as Chrome, except that <img> is already correctly supported. We should probably convert this page into an actual test case. -Jacob [1] http://www.w3.org/TR/CSS21/visudet.html#the-width-property [2] http://www.w3.org/TR/CSS21/visudet.html#the-height-property [3] http://jsfiddle.net/S9C5Y/3/embedded/result/
Received on Friday, 21 March 2014 19:09:56 UTC