Re: [csswg-drafts] [css-transitions] Transition to height (or width) "auto" (#626)

@Loirooriol Thanks for your patience and for linking back to previous discussion.  

Is the following an outline algorithm of "introducing interpolation with a computed `auto`"?

1.  if you've got `transition:height;` on an element, save the current height as 'old_height' just before any changes are made to the element
2.  if the new height is set to `auto`, apply the change in a 'virtual area' which doesn't affect layout yet.  Use this to calculate a 'new_height'
3.  apply the change in the DOM, but with the override height of 'old_height' initially
4.  run the transition through to the 'new_height' according to the transition

I imagine the difference of this from the current spec is that in step 1 you don't calculate the old_height, you just look it up from the CSS (is this what you mean by 'used value')?  And also there's currently no attempt to do pre-calculate the layout to derive the final value?
Rather than solve the general case, I definitely think this should be limited in scope to when spec when an explicit `auto` is added or removed to the CSS.  It could be extended to other cases upon demand, and based on whether they are sane!

Is there ongoing work on a draft for the above?  Or a draft for the other approach you mentioned?

Aside: This might work for the [image being replaced by a differently sized one ](https://github.com/w3c/csswg-drafts/issues/626#issuecomment-630484457) with transition:height set on the container, but I can already think of complications to that, and that's not what this ticket is about — a transition wouldn't apply in that case according to this proposal as `auto` hasn't been added or removed when the image is changed.

-- 
GitHub Notification of comment by eoghanmurray
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/626#issuecomment-1054144394 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 28 February 2022 11:09:49 UTC