Autor | Zpráva | ||
---|---|---|---|
snazimse Profil |
Dobrý den,
Potřeboval bych vědět,jak přesně napsat zřejmě podmínku v php. Aby se mi css ,které se zobrazuje na všech stránkách stejně,zobrazilo jen na konkrétní stránce jinak než na ostatních,jedná se o menu v css. Jde o změnu umístění v css.Ale to není důležité.Prostě ,aby pro tu konkrétní stránku např pro.stranka.html přestalo platit pravidlo v css pro zobrazení menu jako pro všechny ostatní a mohl si ho upravit podle sebe jen pro tu jednu stránku.Do té stránky nejde nic vložit ,protože ta stránka ve skutečnosti neexistuje je uměle vytvořená.Takže se určitě musí použít podmínka.Otázka je ,že ikdyž nastavím nové pravidlo,tak jak zrušit to staré pro konkrétní stránku,pokud to bude v konfliktu.Jinak jedná se o RS joomla. Zkoušel jsem to takhle,ale nefunguje.Děkuji moc všem za rady a příklady. <?php if ($_SERVER['PHP_SELF'] == "stranka.html"){ ?> <style type="text/css"> .nejake css { float: left; overflow: hidden; margin-left: +11%; }</style> <?php }?> |
||
Chro Profil |
#2 · Zasláno: 3. 2. 2014, 12:46:14
Proč to neřešíš na úrovni CSS+HTML další deklarací stylu a změnou názvu hodnot atributů id nebo class?
|
||
Joker Profil |
#3 · Zasláno: 3. 2. 2014, 12:49:25
snazimse:
Jak píše Chro, stačí nastavit nějakou CSS třídu a mít jediné CSS. Ale pokud jde o rozlišení stránky: Tak buď jeden PHP soubor odpovídá jedné stránce, pak není třeba to řešit (prostě se to dá do té jedné stránky), nebo jeden PHP soubor může zobrazovat víc stránek. Pak se musí podle něčeho rozhodnout, kterou stránku zobrazit. No a podle toho stejného může vkládat i nějaký dodatečný obsah. |
||
Chro Profil |
#4 · Zasláno: 3. 2. 2014, 12:56:56
Já bych jen doplnil k [#1], že $_SERVER['PHP_SELF'] vrací název souboru s lomítkem na začátku, takže podmínka nemůže být splněna, /stranka.html se nerovná stranka.html.
|
||
snazimse Profil |
#5 · Zasláno: 3. 2. 2014, 13:06:03
Děkuji za odpovědi.Ale nerozumím...jak jediné css? Joomla pracuje tak ,že prostě do všech podstránek práskne stejné css,stejný layout.Jak to myslíte nějakou třídu?Nechápu třída je stejná pro všechny stránky.Ale potřebuji aby neplatila,jen pro jednu stránku měla tam jiné nastavení ,aby se například menu nezobrazilo vlevo ale vpravo pomocí marginu.Stránka jako taková fyzicky neexistuje. Díky
|
||
pako Profil * |
#6 · Zasláno: 3. 2. 2014, 13:34:45
Skus vo svojej podmienke pouzit
basename($_SERVER['PHP_SELF']) .
|
||
Joker Profil |
#7 · Zasláno: 3. 2. 2014, 13:45:52
snazimse:
„Nechápu třída je stejná pro všechny stránky.Ale potřebuji aby neplatila,jen pro jednu stránku“ Tak ta jedna stránka ji mít nebude. Nevím, jaké jsou v tom konkrétním případě možnosti ovlivnit vzhled stránky. |
||
snazimse Profil |
#8 · Zasláno: 3. 2. 2014, 15:37:10
pako: bílá stránka,zřejmě je někde chyba.
if basename($_SERVER['PHP_SELF']) == "/stranka.html"){ ?>
|
||
han5vk Profil |
Máš vypnuté zobrazovanie chýb a za if ti chýba otváracia zátvorka:
if (basename($_SERVER['PHP_SELF']) == "/stranka.html"){ |
||
snazimse Profil |
#10 · Zasláno: 3. 2. 2014, 17:04:53
Pravda,ano chyba,.Tak jsem to teda zkusil.CSS to nové pravidlo nenačetlo.Na té dané stránce.Tak nevím co zkusit ještě udělat.Někdo nějaké návrhy? Díky
|
||
pako Profil * |
#11 · Zasláno: 3. 2. 2014, 21:22:20
Funkcia basename by mala vracat prave tu poslednu cast adresy bez lomitka.
|
||
Časová prodleva: 11 let
|
0