aan alle goede dingen komt een eind, webmasterplein.net 2003 - 2013
wij danken jullie voor al mooie momenten die dankzij dit forum ontstonden - Derk, Rutger en Stef

[php] [css] Variabelen gebruiken in CSS

Deel alles wat je delen kan, gebruik het voor opslag, plaats het omdat je er trots op bent of creëer samen wat moois!

[php] [css] Variabelen gebruiken in CSS

Berichtdoor ElbertF » 20 apr 2008 19:19

Met een eenvoudige parser kun je variabelen gebruiken in CSS, zo hoef je niet meer op meerdere plaatsen (en misschien zelfs meerdere bestanden) bijv. de tekstkleur of lettertype aan te passen als je je layout wilt veranderen.

index.html:
Code: Selecteer alles
<link href="style.php?file=common" rel="stylesheet" type="text/css"/>

style.php:
Code: Selecteer alles
<?php
if ( !preg_match('/[a-z0-9_ ]+/', $file = $_GET['file']) )          die('Error');
if ( !(
$content = file_get_contents('style/' . $file . '.css') ) ) die('Error');

$css_vars = array(
    'font_color_1' => '#000',
    'font_color_2' => '#333',
    );

$key   = array_keys($css_vars);
$value = array_values($css_vars);

function
add_brackets(&$key) { $key = 'var(' . $key . ')'; }

array_walk($key, 'add_brackets');

header("Content-Type: text/css; Charset=utf-8");

echo
str_replace($key, $value, $content);
?>

style/common.css:
Code: Selecteer alles
body {
    color: var(font_color_1);

Je kan $css_vars in een apart bestand stoppen als je met meerdere stijlen werkt, dit is even voor 't idee.
Avatar gebruiker
ElbertF
wmpr
 
Berichten: 1310
Geregistreerd: 14 nov 2007 22:09

Re: [php] [css] Variabelen gebruiken in CSS

Berichtdoor julien » 22 apr 2008 09:01

Wat is het grote voordeel ten opzichte van je css in een extern bestand te plaatsen?
Avatar gebruiker
julien
wmpr
 
Berichten: 2195
Geregistreerd: 28 nov 2003 16:21
Woonplaats: Kortrijk

Re: [php] [css] Variabelen gebruiken in CSS

Berichtdoor ElbertF » 22 apr 2008 10:03

Dit script werkt met externe bestanden. Op deze manier kun je gelijke waarden van meerdere elementen in een variabele plaatsen zodat je ze makkelijk in één keer kan aanpassen (bijv. 10 elementen met dezelfde kleur hoef je dan niet 10x aan te passen).
Avatar gebruiker
ElbertF
wmpr
 
Berichten: 1310
Geregistreerd: 14 nov 2007 22:09


Keer terug naar Snippets



cron