Autor Zpráva
maycza
Profil
Zdravím,

měl bych takový dotaz ohledně změn odkazů na CSS styly, popř JS soubory. Zajímalo by mě, jestli někdo z vás při tvorbě webu dělá víc css/js souborů a pak je při načítání stránky po ověření ID stránky mění. Např.:
if (id_stranky==1){echo "<link rel="stylesheet" type="text/css" href="styl1.css"/>";}
if (id_stranky==2){echo "<link rel="stylesheet" type="text/css" href="styl2.css"/>";}
...atd.

Zajímá mě spíš jen váš názor na věc, jestli je to dobrý nápad nebo se do toho vůbec nepouštět.. nebo je to samozřejmost a já to nevím :)

Díky :)
Trejpa
Profil
maycza:
Pokud si to tak uděláš pro každou stránku, zrušíš si tím výhodu externího stylopisu (kešování, tj. ušetření požadavku na server a data).

Jestli jsou styly pro každou ze stránek úplně odlišné, tak bych je dal přímo do stránky pomocí <style>, ušetříš HTTP spojení. Na nějaké drobné rozdíly bych vytvořil jeden styl a v něm na konci jednotlivé odlišnosti pro různé stránky rozlišil pomocí kontextové deklarace začínající třeba na rozdílná ID vložená do body každé ze stránek.

Nicméně se dá rozdílný styl pochopit u dvou naprosto nezávislých částí webu, například obsahová část a fórum.
peta
Profil
$styly = array(
1=>"styl1.css",
2=>"styl2.css"
);
$styl = isset($styly[$id_stranky]) ? $styly[$id_stranky] : $styly[array_keys($styly)[0]];
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"".$styl."\"/>";
Asi bych to resil stejne jako Trejpa,
* pro samostatne stranky inline-css primo do stranky, pokud v tom css neni mnoho znaku.
* Pokud je to velky css, tak externi-css.
* Pokud jsou to samostatne stranky, treba univerzita ma katedry a kazda ma treba jine barvy, tak tam bych to resil uplne samostatnou slozkou a presmerovani na zaklade virtualhostu na strane serveru. V te slozce by pak meli treba podslozku site/, kde by bylo dalsi nastaveni stranek a php by to tak cerpalo z teto slozky.
* Pokud je to cms typu blog, tak nevim, jak to resi, asi vytahuji nejake nastaveni uzivatele a to pak dosazuji do sablony. Coz muze byt trosku pomalejsi, ale kesovani na serveru by to melo vyresit.
maycza
Profil
Díky za odpovědi, podle toho co píšete bude asi nejvhodnější mít jen jeden externí css soubor. Nemyslel jsem to na nic konkrétního, spíš mě zajímalo, jestli to někdo z vás řeší i jinou cestou (viz výše). Ještě jednou díky za názory ;)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: