This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The CSS3 Transform specification might allow transform lists, where the single transform functions are not separated at all: transform: translate(100px,100px)rotate(45deg); The same for the presentation attribute: transform="translate(100,100)rotate(45)" Neither CSS3 Transforms nor SVG Transform allow it at the moment. Nevertheless, it works on the browsers: Safari, Chrome, Firefox and Opera. Currently untested is IE, I'll test it on IE today and give feedback.
Created attachment 1097 [details] CSS Transform test
Created attachment 1098 [details] SVG Transform test
I tested IE 10 preview, and IE 10 supports it as well.
Is there precendent in any other css property that takes a bare list of functions?
(In reply to comment #4) > Is there precendent in any other css property that takes a bare list of > functions? I just know of CSS Filters that have a list of functions. I'll check what WebKit does there.
It's cool that everyone supports this, but I fear that adding so much flexibility now removes any flexibility for us in the future. Imagine that we need to add some characters after the parentheses for some reason (4d transforms!!) or remove parentheses - we won't be able to do it if we explicitly allow this. On the other hand, codifying existing behaviour is generally a good thing.
(In reply to comment #4) > Is there precendent in any other css property that takes a bare list of > functions? Just checked -webkit-filter: drop-shadow(10px 10px 10px blue)sepia(); and it works as well. (In reply to comment #6) > It's cool that everyone supports this, but I fear that adding so much > flexibility now removes any flexibility for us in the future. Imagine that we > need to add some characters after the parentheses for some reason (4d > transforms!!) or remove parentheses - we won't be able to do it if we > explicitly allow this. > > On the other hand, codifying existing behaviour is generally a good thing. Wow! 4D? Don't we support it already with transitions and animations? :D But I understand the concerns. Nevertheless, we would have to deal with it if we need the flexibility as well. Even if unspecified, we could potentially break existing content if we need the separation later.
As I'm reading CSS 3 Values and Units, optional whitespace is always allowed between tokens in values: """ Component values are specified in terms of tokens, as described in Chapter 4 of [CSS21]. As the grammar allows spaces between tokens in the components of the value production, spaces may appear between tokens in property values. """ http://dev.w3.org/csswg/css3-values/#component-whitespace So I suggest we just remove the sentence "The individual transform functions are separated by whitespace". It's already covered by other specs. I already have a test for this in 3d-transforms.html, which tests that "tranSlatex( 16px )rotatez(-90deg) rotate(100grad)\ttranslate3d(-12pt, 0, 0.0em)" is parsed as: "translateX(16px) rotateZ(-90deg) rotate(100grad) translate3d(-12pt, 0px, 0em)"
Created attachment 1099 [details] Suggestion What about the attached diff? Remove the sentence like Aryeh described and change SVG part like that: If the transform list consists of more than one transform function, these functions may be separated by optional whitespace, an optional comma (‘<code class="css">,</code>’) followed by optional whitespace. The transform list can have optional whitespace characters before and after the list.
The CSS part of that change looks good to me (I didn't review the SVG part).
Dean, do you still have concerns that we need to discuss?
Committed change today.