Kdo jste dělal větší css jak se dvěma položkama, určitě byste přivítali jakési konstanty (nebo proměnné).
A tak jsem si vymyslel něco takového:
<?php
header('Content-type: text/css');
$pismo = '#ffff00';
$pozadi = '#0000ff';
echo <<<konecek
/* dynamicke css */
p {
color: $pismo;
background: $pozadi;
}
div.jako_p {
color: $pismo;
background: $pozadi;
}
konecek
;
?>
===============
v html pak stačí
<link rel="StyleSheet" href="css.php" type="text/css" />
samozřejmě se nabízí možnosti zjišťování prohlížečů, možnosti další dynamiky, generování náhodných barev :-)) a další ptákoviny.
co vy na to? Není tohle už někde jinde vyřešeno lépe?
nevím, také používám. také někdy generuju css javascriptem
Nápad je to dobrej, taky hojně využívanej ;)
No a ještě se to dá vyšperkovat pomocí mod_rewrite, aby nebylo poznat, že jde o PHP:
RewriteEngine On
RewriteRule ^styles.css$ styles.php [L,QSA]
Napad je to dobre, ale podle mne nepouzitelnej.
Potrebujes na to PHP.
A druhak
$pismo = '#ffff00';
je totez jako
$a = "#ff0";
Si myslim, ze tim nic neusetris generovat CSS PHPckem, leda k meneni barev a to se da resit i zmenou celeho CSS souboru.
<HTML>Ja jsem tohle jeste nikdy nepotreboval, mozna je to ale otazkou zapisu.
Nepouzitelny mi to nepripada, ale vyuziti bych videl spis v nejakych systemech kde je moznost snadno menit vybrane prvky (jako napr. barvy). Blogovaci systemy to jiste vyuzivaji.</HTML>
peta:
>>nepouzitelnej. Potrebujes na to PHP.
no tomu rikam duvod
btw, kdyz tohle pouziva i treba phpMyAdmin a podobny veci, tak to asi zas tak nepouzitelny asi nebude.
je to docela skvela vec kdyz chces treba udelat web s moznosti "themes"
Tady šlo spíš o to, že máš CSS už pěkně rozlezlé a přestane se ti líbit obecná barva pozadí, tak "blik" a je to.
přijde mi to jako dobrý nápad ;-) Ještě jsem nic podobnýho sice nepotřeboval, ale jeden nikdy neví…
Daly by se tím skvěle tvořit skiny:
<link rel="StyleSheet" href="css.php?skin=1" type="text/css">
<link rel="StyleSheet" href="css.php?skin=2" type="text/css">
a potom to rozlišit v souboru css.php
Prave. Na zmenu designu je tato volba lepsi. Misto, abys to vsechno delal na strance, tak to provedes jednoduse v CSS. Stranka zustane cista a nedotcena. V CSS to muzes prekopat jak chces.
Navic na rozsahlejsi, ci userfriendly projektech (napriklad RS) je to vyhodne pro zacatecniky. Misto aby se starali o CSS syntaxi, staci jen otevrit formular, kde definujes barvicky, ulozis a je to.
Mno, jako CSS konstanty uz mi pochybeli vicekrat. Vetsinou to resim sdruzenymi zapisy, kdy oddelim layout od barev.
Ale v PHP bych to nedelal. Nic vic jsem rici nechtel.
bez PHP
body, table {font-size, color}
body {margin, pading}
table {}
body, table {}
body {margin, pading, font-size$PHP, color$PHP}
table {font-size$PHP, color$PHP}
hm... ja vam do toho nechcu kecat :) ale tohle se resi spis JS (protoze potom se nemusi reloadovat stranka :) (a skript se provede az u usera :) )).
(ale pochopitelne pro blogovací systemy se tohle určitě nepoužívá).
no záleží na tom, co zrovna chceš, no. já třeba mam různej styl pro různý browsery (nebo jsem měl), toe podle mě lepší přes php než přes JS - detekci browseru udělám přes php a pak už pošlu to co to má být. na tu detekci mi stačí hlavička co mi browser pošle.....a je to
nějak moc Vám do toho nechci kecat (je to můj osobní názor), ale není přehlednější udělat raději 2 CSS soubory pro změnu "themes" ?
Ondra: Zalezi na situaci. Pokud chces pevne nastaveni (dejme tomu 3 skiny - modra,cervena,zelena), tak staci pouzit staticke CSS. Pokud si chces ale hrat s barvickama (vice moznosti barev), tak nekolikero CSS ti bude spise na obtiz.
Jak uz jsem rikal, vyhodne to muze byt u skinovatelnych RS urcene pro zacatecniky, kteri radeji sahnou po formulari, nez aby si sami editovali CSS soubor.
No jasně, tohle nemůže být pro všechny, většinou je výhodné mít jenom jedno css bez nějakých příšpulků. Ale kdyby někdo potřeboval...