[ 
https://issues.apache.org/jira/browse/TRINIDAD-89?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512990
 ] 

Leonardo Uribe commented on TRINIDAD-89:
----------------------------------------

Yes, I has noted before that this is true. But the aliases has its drawback. 
For example:

@constants {
        greencolor: #97f099;
        f90color : #f90; 
}

/*..... ....*/

.AFPanelNavigationHorizontal ul li.on ul {    
    display: block;
    background: f90color;
}
.AFPanelNavigationHorizontal ul li.on:hover ul, .AFPanelNavigationHorizontal ul 
li.over ul { /*for ie*/
    background: greencolor;
}
.AFPanelNavigationHorizontal ul li a {
    color: #B510D;
    font-weight: bold;
    display: block;
    padding: 5;
}
.AFPanelNavigationHorizontal ul li.on a {   
    color: #fff;
    background: f90color;
}
.AFPanelNavigationHorizontal ul li.on ul a, .AFPanelNavigationHorizontal ul 
li.off ul a {
    float: left; /*ie doesn't inherit the float*/
    border: 0;
    color: f90color;
    width: auto;    
}

Please note that in this case, the constant f90color are used in the following 
properties:

color
background

The example was adapted from the css file of the examples of tomahawk component 
called panelNavigation.

Theorically, you have to define 4 alias classes to do the same or do not use it 
at all. The practical problem is if I want to
change the color theme of a skin, I have to change on its 4 alias selectors or 
in all the css file. I feel that constants are more
clear and easy to understand than use aliases, but this is my particular 
opinion.

But thinking more from other point of view, maybe the only example that this is 
true and it has a practical value is with color properties.
The other scenarios of need to group properties could be done with aliases. =| 

Anyway, thanks for your efford and guide illustrating that point of view.

> Server side CSS constants for .css files
> ----------------------------------------
>
>                 Key: TRINIDAD-89
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-89
>             Project: MyFaces Trinidad
>          Issue Type: Improvement
>          Components: Skinning
>    Affects Versions: 1.0.2-core
>            Reporter: Leonardo Uribe
>         Attachments: patchConstants6.patch
>
>
>  Working in my Google Summer of Code, I have found that It would be cool, 
> when you define a css skin file that you can do something like this:
> @constants {
>       greencolor: #97f099;
>       f90color : #f90; 
> }
> .AFPanelNavigationHorizontal ul li.off a:hover, .AFPanelNavigationHorizontal 
> ul li:hover a, .AFPanelNavigationHorizontal ul li.over a {
>     background: greencolor;
>     color: f90color;
> }
> Like in server side CSS in PHP.
> I have created a patch that adds this feature. With this, yo can define local 
> constants variables in a .css file that is used as trinidad skin file.
> (If you define a constant in a base skin, the extended skins don't see it). 
> It's a simple but powerful idea.
> Suggestion for improvements of this topic are welcome.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to