Passando parâmetros para arquivos CSS

[ad#texto]

Muitos desenvolvedores Web se veem obrigados a espalhar códigos CSS em meio ao HTML, JavaScript ou PHP por um simples motivo: o seu código CSS precisa receber valores dinamicamente, um caso difícil de ser resolvido, bem, difícil até agora.

Na verdade existem duas formas de conseguir enviar valores para um arquivo CSS, a primeira é editando o arquivo .htaccess e por consequência só irá funcionar em servidores Apache, mas é bem provável que você encontre formas alternativas em outros servidores web, esta técnica não envolve nenhuma alteração mais profunda no código-fonte da sua aplicação web e toda a alteração consiste apenas no lado do servidor.

Consiste em incluir uma linha como esta no seu arquivo .htaccess:

AddType application/x-httpd-php .css

Está linha irá indicar para o servidor Apache que arquivos com a extensão CSS deverá ser interpretados como um arquivo PHP, logicamente captura de dados via GET e POST será possível de ser implementado, somente se lembre de tomar cuidado com a segurança de sua aplicação web.

A segunda técnica não necessita de alterações nas configurações do servidor web e por isso toda a implementação é realizada via código-fonte da própria aplicação e seu uso se torna universal. Esta técnica somente aceita parâmetros enviados via GET e consiste em forçar um cabeçalho indicando que se trata de um arquivo CSS e nomeá-lo com a extensão .PHP, assim você terá um arquivo PHP (poderá utilizar todo o poder de programação da linguagem) e o mesmo será tratado como um CSS. Veja o exemplo abaixo:

<?php header('Content-type:text/css'); ?>

body {
  background-color: <?php echo (isset($_GET['fundo']) && $_GET['fundo'] == 'verde') ? '#0f0' /* Verde */ : '#00f' /* Azul */; ?>
}

Viu, código CSS e PHP juntos.

Fonte: PHPIT

Petter Rafael

Desenvolvedor Web atua com as tecnologias Java e PHP apoiadas pelos bancos de dados Oracle e MySQL. Além dos ambientes de desenvolvimento acima possuiu amplo conhecimento em servidores Apache/Tomcat, Photoshop, Arte & Foto, Flash e mais uma dezena de ferramentas e tecnologias emergentes. Atualmente colabora com o Viablog escrevendo sobre programação e tecnologia.
ViamaisBLOG
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.