Re: Splitting 'display'

Tab Atkins Jr. wrote:
> On Fri, Apr 16, 2010 at 7:34 PM, Andrew Fedoniouk
> <news@terrainformatica.com> wrote:
>> Tab, are you trying to re-introduce display-model and display-role from
>> here: http://www.w3.org/TR/2002/WD-css3-box-20021024/#L706
>> ?
> 
> Yes, precisely.  That's the draft that I took some text from, actually.

That would have been nice to point out in the beginning. Could you
elaborate about the important differences between your latest version
and the old working draft?

I agree with the idea of splitting the 'display' property in parent and
child parts.

Why you did not use 'display-model' and 'display-role' as previously
specified? Do you believe that 'display-inside' and 'display-outside'
are more clear?

I agree with your reasoning about list-item and the I think that it
requires something pretty special. I'm afraid that for backwards
compatibility and special side-effects required for current definition
of 'display: list-item', the only logical choice is a third display
property. I don't know if it should be called 'display-extras' or
'display-side-effects' or 'display-magic' or 'display-compatibility' but
it would make following
 display: list-item;
a short hand for
 display-outside: block;
 display-inside: inline;
 display-extras: list-item; /* ::marker and counter magic */

I'd suggest using the name 'display-compatibility' because hopefully the
list-item is the only feature ever needing this hack. Using the word
'compatibility' in the property name should be make it obvious that new
features should not use this property. On the other hand, there may not
ever be a time when an UA vendor could stop supporting 'display:
list-item' (in favor of newer features). I think the word
'compatibility' should be used only if the feature would be deprecated
in the future.

In addition, I agree with Andrew Fedoniouk that splitting the 'display'
property does not change anything in itself. However, I still believe
that this change would be beneficial in the long run, because it would
simplify defining new features as Tab Atkins Jr. reasoned. In addition,
it would make explicit to UA vendors that the engine must be able to use
separate algorithms for the the inside and outside of any element.

Why was the previous split (display-model/display-role) abandoned? It
does not exists in latest draft as far as I know.

-- 
Mikko

Received on Wednesday, 21 April 2010 07:13:11 UTC