CSS Cacheer est un préprocesseur php pour les feuilles de styles CSS et a été développé par Shaun Inman.
Ce petit bout de php permet des écritures assez fabuleuses, qui permettent d’éclaircir et de simplifier les codes css.
Fonctionnalités
Définir et utiliser des constantes :
@constants{
claire:#f90;
foncee:#630;
police: Tahoma Verdana Georgia;
}
#navigation{
color:const(claire);
font-family:const(police);
}
#conteneur{
background:const(foncee);
}
Ecriture par imbrications successives :
ul {
margin:10px;
li{
display:inline; float:left;
a{
text-decoration:none;
:hover{text-decoration:underline;}
}
}
}
/* devient */
ul{margin:10px;}
ul li{display:inline; float:left;}
ul li a{text-decoration:none;}
ul li a:hover{text-decoration:underline;}
Blocs de paramètres
base(navigation_onglet){
ul{margin:10px;}
ul li{display:inline; float:left;}
ul li a{text-decoration:none;}
ul li a:hover{text-decoration:underline;}
}
.navigation_generale{
based-on:base(navigation_onglet);
border:1px solid gray;
}
Mise en plugin SPIP
J’en ai fait un plugin pour SPIP 2.0 (qui utilise la balise #FILTRE
).
Le plugin est téléchargeable ici : Css Cacheer pour SPIP
Le fonctionnement est expliqué dans le plugin. Il suffit d’avoir un css compilé par SPIP (donc dans un theme.css.html
par exemple), appellé par #URL_PAGE{theme.css}
dans la balise <link>
de l’entete html, et d’ajouter dans ce fichier la balise #FILTRE{css_preprocess}
, ce qui peut donner :
#CACHE{3600*24*7*2,cache-client}
#HTTP_HEADER{Content-Type: text/css; charset=utf-8}
#HTTP_HEADER{Vary: Accept-Encoding}
#FILTRE{css_preprocess}
...code css...