W3C home > Mailing lists > Public > www-style@w3.org > May 2013

RE: [css-regions] Changed @region rule to ::region() pseudo-element

From: François REMY <francois.remy.dev@outlook.com>
Date: Fri, 17 May 2013 21:09:18 +0200
Message-ID: <DUB120-W6C795EB60495476DAB82FA5AC0@phx.gbl>
To: Tab Atkins Jr. <jackalmage@gmail.com>, Brad Kemper <brad.kemper@gmail.com>
CC: Alan Stearns <stearns@adobe.com>, Sylvain Galineau <galineau@adobe.com>, "www-style@w3.org" <www-style@w3.org>
> While I agree with you that the grouping allowed by @region was good
> (we've received feedback that the repetition required to use
> ::distributed() isn't great either), I'd rather solve it generically
> by reworking my Hierarchies (Nesting Rules) draft.
>
> In other words, I support keeping ::region(), and then working on a
> generic nesting solution that'll fix the repetition.
>
> ~TJ

On a another note, I don't like the fact the selector is an argument sitting inside a parenthesis of ::distributed/::region because it implies something else can follow the selector. For example, doing "someElement::after:hover" or "someElement::scrollbar-track:hover" could make sense but "someElement::region(>*):hover" does not. 

I still believe we need something that looks more like a combinator than a pseudo-element here.

   someElement ...> *
   someElement ...> *:hover

I know it has been rejected because (a...b) matches elements that b does not necessarily but I really believe this is not a big issue and it makes much more sense than using ::region(*) and ::distributed(*) while both actually just represent a selection function the same way any other combinator does if you think left to right, which --all your CSS users-- do.


Also, it's shorter to write if we have nesting:

    someElement {
        
        abc: def;
        abc: def;
        
        @then ...> strong {
            
            abc: def;
            abc: def;
            
            @where :hover {
                
                abc: def;
                abc: def;
                
            }
        }
        
        @then ...> italic {
            
            abc: def;
            abc: def;
            
            @where :hover {
                
                abc: def;
                abc: def;
                
            }
        }
        
    }

than

    someElement {
        
        abc: def;
        abc: def;
        
        @where ::region(>strong) {
            
            abc: def;
            abc: def;
            
            @where :hover {
                
                abc: def;
                abc: def;
                
            }
        }
        
        @where ::region(>italic) {
            
            abc: def;
            abc: def;
            
            @where :hover {
                
                abc: def;
                abc: def;
                
            }
        }
        
    } 		 	   		  
Received on Friday, 17 May 2013 19:09:49 UTC

This archive was generated by hypermail 2.3.1 : Friday, 17 May 2013 19:09:50 UTC