Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/11/2009, 09:53
isra00
Invitado
 
Mensajes: n/a
Puntos:
Aporte: CssDispatcher

¡Hola! He escrito una pequeña biblioteca que quizá os resulte útil. CssDispatcher es una biblioteca PHP libre que te ayuda a manejar múltiples estilos CSS como plantillas PHP, unirlos y minimizarlos.

1 CSS que se superan

Con CssDispatcher puedes introducir variables en las hojas de estilo...
Código:
body { 
	color: <?=$primaryColor ?>; 
}

#main { 
	<?=css_round_border('1em') ?>;
	background: <?=$secondaryColor ?>;
}
...declarándolas de un modo elegante:
Código PHP:
$layout = new Css('layout.css.php'); 
$layout->primaryColor '#333'
$layout->secondaryColor '#eee'
2 Mejora el rendimiento

Cuando tienes varios archivos CSS, más peticiones HTTP implican más lentitud al cargar y más trabajo para el servidor. Con CssDispatcher, puedes unir varias hojas de estilos y servirlas como un sólo archivo:

Código PHP:
$styles = new CssDispatcher
                     
$styles->add(new Css('ie-hacks.css.php')); 
$styles->add(new Css('general.css.php')); 
 
$styles->render(); 
CssDispatcher también puede minimizar la hoja de estilos generada, eliminando saltos de linea y tabulaciones innecesarias.

3 Compatibilidad entre navegadores

Si tienes hojas de estilo específicas de un navegador, CssDispatcher las servirá cuando lo especifiques:
Código PHP:
$styles = new CssDispatcher
                     
//This CSS code will be sent only if the user agent is IE 6 
$styles->add(new Css('ie-hacks.css.php'Css::UA_IE6)); 
$styles->add(new Css('general.css.php')); 
 
$styles->render(); 

4 Aún más rendimiento

Puedes comprimir y almacenar en cache la salida de CssDispatcher para obtener mejor velocidad y menos carga en el servidor. Hay un artículo dedicado a este tema titulado "Aún más rendimiento con CssDispatcher"

Espero que os resulte útil. Si alguno la prueba y se le ocurre alguna idea o fallo, le agradeceré el feedback

Un saludo a todos!