» »

Izdelava menija?

Izdelava menija?

«
1
2

Jackass ::

Živjo!

Izdelal sem spletno stran z več podstranmi v dreamweawerju. Ob strani bi rad naredil meni, ki naj bi bil tak, da je najprej gumb "modre" barve in z "belim" napisom, ko bi pokazal z miško gor, pa bi se obarval gumb "zeleno" in pisava v "črno". Če pa kliknš gor, bi gumb ostal take barve kot ko si šel z miško čez.

Vem da se da to preprosto narest s slikami in behaviours-i. Ampak js bi to mogoče rajš naredu z layerji, vendar ne vem točno kako. Zanima me ali se da to v dreamweawerju kako narest?

npr. neki tazga: http://www.zhoulin-europe.com/ (v IE odprite, ker v mozilli ne dela čist prou)
jAcKaSS

MihaFirst ::

en offtopic vprašanje na katerega kljub že postavljeni temi nisem dobil odgovora - kako pa narediš podstran? jst sm odpru nov dokument pa linkal na tisto stran (vse strani mam seveda v isti mapi). a je to res najboljši način? težave so pri osveževanju, ko se neki noče shranit, pa se ne vrneš na isto stran pa to...
www.gamma.si

#000000 ::

Kako to misliš podstran ? a popUp al kaj, ker podstran ne obstaja, obstaja samo drug html dokument, ki pa se lahko odpre kot novo okno ali zamenja to na keri si trenutno. Kaj zdej bi ti. LP

MihaFirst ::

ja no, jst bi, da se mi v istem oknu odpre drug dokument. s temi linki, ki jih uporabljam se mi vsakič novo okno odpre, kar je v Operi v redu, V EI si pa mrzel, če se ti ofne 10 novih oken...
www.gamma.si

mte ::

ne s slikami in ne z behavioursi in ne z layerji.. ključna beseda za iskanje je css, sploh tagi kot so a:hover, a:visited, a:active. Verjetno se da zgoraj povedano doseč tudi na klik-klik način, ampak ne poznam dreamweaverja.
Aja, slab primer, če v mozilli ne dela.

edward: Kakšno osveževanje? Kaj bi ti shranil? Kot je #000000 rekel, podstrani ne obstajajo, obstajajo samo druge strani. Kako imaš pa ti hierarhijo sestavljeno, ni stvar dreamweaverja ali html-ja. Torej je to res "najboljši" (sicer tudi edini) način. Tvoje težave pa izvirajo iz kake druge napake, ampak nisi nič konkretnega povedal.

edit: aha, torej očitno ne znaš linka nardit. Koda za link je
<a href="drugastran.html">Druga stran</a>

notri ne sme bit noben target ali kaj podobnega.

Zgodovina sprememb…

  • spremenil: mte ()

MihaFirst ::

hotel sem reči da npr. ko spremenim dokument index.html spremembe shranim, potem pa v Operi iz index.html linkam na unlited7.html tam izpolnim nek obrazec, čist tak mal, in potem linkam nazaj na stran index.html, kjer pa ni prikazane shranjene spremembe.
www.gamma.si

IceIceBaby ::

Jackass, tole je narejeno s CSSom, brez slik. Spodaj je koda, ki naredi nekaj podobnega. Mogoče je kaka napaka not, ampak u get the point.

#menu {
font-family: Arial, Helvetica, sans-serif;
clear:left;
float:left;
width:150px;
margin:0 0 0 0;
padding:0;
font-size:0.9em;
}

#menu ul {
list-style:none;
width:150px;
margin:0 0 0 0;
padding:0;
font-size:1.1em;
}

#menu li a{
font-weight:bold;
height:20px;
text-decoration:none;
color:#505050;
display:block;
padding:6px 0 0 10px;
background:#f4f4f4;
border-left:8px solid #CF7536;
}

#menu li a:hover {
background:#eaeaea;
color:#CF7536;
border-left:8px solid #CF7536;
}

mte ::

ah..html je statičen in ne dinamičen. To pomeni, da ne boš mogel kar tako z obrazci delat. Za uporabno funkcionalnost obrazca boš potreboval znanje php ali podobnega dinamičnega jezika, s katerim boš te spremembe tudi prikazoval v html-ju. Ampak daj se raje prej html nauči, brez tega ne bo šlo. Tudi mi ni jasno, kako si sploh "definiral" kako se spremembe prikažejo, če se pa to sploh ne da...

Jackass ::

edward: Če te zanima kako narest stran tko, da boš mel neko tabelo in boš v osrednjo celico ob kliku na povezavo naložu stran je to najlaži s php-jem.

Nardiš tabelo.

V celico, v kateri hočš, da se ti odpre stran daš tole:

< ?php
error_reporting(E_ALL & ~E_NOTICE);
if($_REQUEST["content"] != "")
include($_REQUEST["content"]);
else
include("primarna.html");
?>

in pol nardiš linke tkole:

< a href="?content=dokument.htm">link< /a>
jAcKaSS

Jackass ::

kst: Torej jst nardim zdej tabelo, če se ne motm? In vklučm tale CSS v html dokument?
jAcKaSS

mte ::

Jackass: ne ga še s php mešat, saj še html ne zna... poleg tega je ta metoda ki si jo opisal zelo slaba. Kaj če jaz ročno vpišem naslov npr. http://www.mojadomena.com/index.php?con... ? Zelo nevarna metoda, precej hitro se lahko vdre kam...

Ziga Dolhar ::

> error_reporting(E_ALL & ~E_NOTICE);

Zakaj je pa to dobro?
https://dolhar.si/

Jackass ::

Ziga Dolhar: ne vem men je prej neka opozorila vn metal, sam možno da to zato, ker k sm nalagu php, nism bil pozorn na to o čem nej me php obvešča.
jAcKaSS

Jackass ::

kst: Ful hvala, sm sprobu in dela, sam mi niti ni najbl jasn kako to dela. Mislm sm še bl začetnik kr se tiče CSS-ja, glih tolk znam približn, da mi je iz kode uspel razbrt, kaj morm narest da bo meni delu. Sam je pa tole, ful bolša rešitev kt pa z javascriptom.
jAcKaSS

Ziga Dolhar ::

Jackass: opozorila ti je metal zato, ker jih povzroča tvoja koda :-).

S sporno vrstico ti morebitnih napak nisi "obravnaval", ampak jih zgolj prisilno utišal.

if($_REQUEST["content"] != "") 

Tu preveriš, če je _vrednost_ enaka "", ne preveriš pa, če spremenljivka (in posredno vrednost) sploh obstaja. Glede na namen, ki si ga želel doseči, bi zgornjo vrstico precej lahko zamenjal z boljšo if(isset($_GET['content'])).

Pri tem pa ne preveriš, če željena datoteka dejansko obstaja (file_exists()). Še en potencialen error.

Nato te je še mte opozoril na potencialno varnostno luknjo. Ta je še od vseh najbolj kritična.
https://dolhar.si/

Jackass ::

Ziga Dolhar: Aha hvala. Jah js drgač ne znam php-ja praktično nč. Pred slabimi 4 meseci sm začel z Javo. Tko da nekolk bl razumem sam princip programiranja, bom tut do php-ja pršu. Zdej pa delam eno stran in sm pred enim mescem sprašvou kako nej najlaži nardim to, da se mi bo pč v osrednji celici tabele naložila stran. In nekdo mi je napisu to kodo, tko da to ni na mojem zelniku zrastl. Sm vm pa ful hvaležn, če mi kdo še kej novga pove zravn.

Sm enkrat že slišu, da bi blo bolš, če bi mel switch sam js res ne znam tega napisat, Bi bil pa ful hvaležn, če bi si nekdo od vs php-strokovnjakov vzel 10min, pa spisu tistih 5 vrstic.;)

kst: Sm poštudiru, ful hvala. Sam vprašu bi še, a se da določt, da je tekst na sredini tut s kšnimi valign, pa align, al samo s paddingi?
jAcKaSS

mte ::

Jackass: kaj točno ne znaš napisat? Kolikor se spomnem sem ti glih jst zadnjič to napisal, pa mi ni jasno česa ne razumeš..

IceIceBaby ::

Jackass, za dodatne parametre, ki jih lahko uporabiš v CSSu si poglej w3schools al pa kak drug CSS priročnik.

http://www.w3schools.com/

Jackass ::

kst:
Ne sej ubistvu mam vse kr rabm, edin ne vem kako nej spravm tekst na sredino kvadratka. Drgač delam v dreamweawerju in mi tko al tko program vsakič pokaže seznam vseh funkcij in ponavad iščm, kaj mi ustreza. In parameter "text-align:center;" mi lepo poravna na sredino glede na horizontalo, sam "valign-a pa nism najdu, zato sprašujm.

Dragč pa sprot k delam, še berm ta w3schools tutorial, tko da ne se bat.;)
jAcKaSS

IceIceBaby ::

če te prav razumem iščeš tole:

http://www.w3schools.com/css/pr_pos_vertical-align.asp

Jackass ::

mte: Res je, si mi že takrt napisu, sam sm eno butasto napako naredu in pol ni delal. Pol sm bil pa tolk jezn, da sm poslou vse skp nekam, pa reku, ma jebeš še varnost. ah ja...:\

Sm zdele pogledu, naredu in dela. Tko da hvala. A to s switchem je pa kr se varnosti tiče kul?
jAcKaSS

mte ::

ja s tistim switchem ti omejiš prikazovanje le na tiste datoteke, ki jih ti želiš, tako da načeloma je zadeva varna. Večina nevarnosti pri phpju je pri uporabniškem vnosu, če ti ne preverjaš vnešenih stvari in jih kar tako uporabiš...

Jackass ::

kst: To sm najprej probu, pa ni delal, pa sm pol mislu, da je to čemu drugmu namenjen argument. Ne vem zakaj, ampak nikakor noče vržt tistga teksta na sredino. Edin če padding naštimam, sam pol mi mal celice poveča.:|
jAcKaSS

IceIceBaby ::

Dej pokaž kako maš narjeno stran. Si ne predstavljam čist točno.

Jackass ::

#menu {
font-family: Arial;
clear:left;
float:left;
width:150px;
margin:0 0 0 0;
padding:0;
font-size:14px;
}

#menu ul {
list-style:none;
width:150px;
/*margin:0 0 0 0;
padding:0;*/
font-size:14px;
vertical-align:text-bottom;
}

#menu li a{
font-weight:bold;
height:25px;
text-decoration:none;
color:#FFFFFF;
display:block;
vertical-align:text-bottom;
text-align:center;
/*padding:5px 0 0 0px;*/
background:#086867;
/*border-left:8px solid #CF7536;*/
}

#menu li a:hover {
background:#A5CD48; /*zelena*/
color:#086867;
/*border-left:8px solid #CF7536;*/
vertical-align: text-bottom;
}
jAcKaSS

IceIceBaby ::

Kako je pa html narejen ? Maš kje na netu primer strani ?

Jackass ::

html, head, bla, bla, bla

< style type="text/css">

kr sm zgori prlepu...

< /style>

< body>
< ul id="menu">
< li id="menu">< a href="fofo.htm">juhu< /a>< /li>
< li id="menu">< a href="koko.htm">koko< /a>< /li>
< li id="menu">< a href="fofo.htm">fofo< /a>< /li>
< li id="menu">< a href="huhu.htm">hoho< /a>< /li>
< /ul>
< /body>

Nimam še na strani, k bi rd najprej sam meni sprobu, pol ga bom pa na stran dal. Mam na svojmu testnemu serverju, sam si nism še uspel pogledat kako se pr Apache-ju določ pravice uporabnikom.:D
jAcKaSS

Jackass ::

Aja a je to važn, kam daš ta "< style...>"? k dreamweawer ga da v < head> js sm ga dla pa kr izvn head-a, pred body.
jAcKaSS

mte ::

ali je v headu ali je v bodyu, mislim da ni važno (čeprav se to ponavadi da v head). Ne smeš pa dat kar nekam med head in body..

Jackass ::

No ja, čeprou dela v obeh primerih, ampak se bom držu tega, hvala.
jAcKaSS

IceIceBaby ::

jackass, tisti id=... pri vsakem elementu ni nujen, oziroma ni kul če ga pišeš. Vse skup daš pod en div pa je.

< div id="menu"> < !-- Menu -->
< ul>
< li>< a href="">Ena< /a>< /li>
< li>< a href="">Dva< /a>< /li>
< li>< a href="">Tri< /a>< /li>
< li>< a href="">Štiri< /a>< /li>
< /ul>
< /div>

Jackass ::

kst: Če naredim tako, potem mi iz neznanega razloga meni vrže približno (po lastni presoji) 30px v desno. Drugače pa je tekst še vedno na vrhu.
jAcKaSS

Jackass ::

Živjo!

Problem sem zato rešil tako, da sem zmanjšal višino celice, nastavil padding, za toliko kolikor sem zmanjšal celice in s tem se besedilo pomanke nekoliko nižje hkrati pa se tudi celica poveča za vrednost pri paddingu.

Edit: Zbrisal t neumn del!:\
jAcKaSS

Zgodovina sprememb…

  • spremenil: Jackass ()

mte ::

pa kje si ti sploh našel text-valign? Pravilno je vertical-align.

Jackass ::

mte: sm že zbrisu, ker sm se zdej spomnu, da nč ni delal pol sm pa mal probavu, dons k sm pa nadaljevou z delom, mi je pč dreamweawer javu napako, sm pa čist spregledu, da so to moji popravki. Ups.:8)
jAcKaSS

Jackass ::

še eno vprašanje glede php-ja.

< ?php
/*error_reporting(E_ALL & ~E_NOTICE);*/

switch($_REQUEST['content']) {
case "dokument.htm":
include ("dokument.htm");
break;
case "dokument2.htm":
include ("dokument2.htm");
break;
default:
include("primarna.htm");
}
?>

Notice: Undefined index: content in F:\webserver\barbara\Copy of 4\index3.php on line 20 (20 je vrstica "switch...").

Ali se da to kako popravit, ali to ni taka stvar in samo vključim tisto vrstico "error_reporting..."?
jAcKaSS

Ziga Dolhar ::

Kopipejst mojega odgovora zgoraj:
--
Jackass: opozorila ti je metal zato, ker jih povzroča tvoja koda :-).

S sporno vrstico ti morebitnih napak nisi "obravnaval", ampak jih zgolj prisilno utišal.



if($_REQUEST["content"] != "")

Tu preveriš, če je _vrednost_ enaka "", ne preveriš pa, če spremenljivka (in posredno vrednost) sploh obstaja. Glede na namen, ki si ga želel doseči, bi zgornjo vrstico precej lahko zamenjal z boljšo if(isset($_GET['content'])).
--

SWITCH konstrukt ovij v IF(isset($_REQUEST['content'])) { [tukaj stoji switch] }

--

Edit: še vedno predlagam, da iz $_REQEST presedlaš na $_GET (oz. manj verjetno $_POST).
https://dolhar.si/

Zgodovina sprememb…

mte ::

spremenljivka content v tem primeru ne obstaja in ti bi jo rad primerjal. Kako, če pa ne obstaja? To ga zmoti. Dodaj še tole:
if (isset($_REQUEST['content'])) {
switch....
}

Jackass ::

mte: Najlepša ti hvala! Sej se mi je zdel da je treba neki s tem pokombinirat, sam nism glih vedu kako točn vgnezdt, če sploh. Tenks!

Najlepša hvala vsm, ker zdej mi je namreč uspel narest ta meni, pa še nekolk bl sm se spoznou s CSS-jem. Mam pa še eno željo glede menija: da k kliknš na določn link, da je tist link (torej ta, ki je aktiven), take barve, kot ko sem šel z miško čez.

Na w3schools sem našel možnost "a:active", tako sem dodal k prejšnji CSS kodi še:

#menu li a:active {
background:#A5CD48; /*zelena*/
color:#086867;
}

Vendar stvar ne deluje. Kaj naj naredim?
jAcKaSS

Jackass ::

Zdej sm pa še ugotovu, da se ta meni v IE-ju nekolk drgač prkaže kt v mozilli. Aaaaaaaaaaaaa!

Pa še kot dodatek js bi reku da se v IE pravilno prkaže, ker se celice ne raztegnejo, če določim padding celice.
jAcKaSS

Zgodovina sprememb…

  • spremenil: Jackass ()

mte ::

Mislim da si "active" narobe predstavljaš. To ne pomeni, da je pobarvan tisti link, na katerem strani si, ampak pomeni pobarvan link ki si ga ravnokar kliknil. Sem si narobe predstavljal?

Jackass ::

mte: js pravzaprou ne vidm kej dost razlike v tem, kr si napisu. Mislm to bi rd, da je tist link, ki sem ga pravkar kliknu, pobarvan. In pol k kliknš druzga, je drug pobarvan. A ni to tko?

Mislm ja, tisga k kliknš postane drgačn, k kliknš pa druzga, pa prvi ni več pobarvan, ampak je pobarvan drugi.
jAcKaSS

Ziga Dolhar ::

Heh ... ja, ampak HTTP per se je stateless protokol. Ko se ti stran ponovno naloži, tist gumb, ki si ga _prej_ kliknil, ni več "kliknjen" :-).

Tako da se boš moral poslužit server-side rešitve.
https://dolhar.si/

Zgodovina sprememb…

mte ::

Zakaj server-side? Saj lahko v vsakem fajlu označi recimo tisti link, ki kaže na ta fajl, takole
<a href="nekastran.html" class="active">Neka stran</a>

v glavnem cssju pa določi
.active {
background-color: #xxxxxx;
}

veteran ::

Hehe, za obarvanje aktivnega menija se bo treba mal potrudit. Tkole gre:

Vsak li v meniju naj ima ustrezen id:
 li id="m-info"
 li id="m-kazalo"

Ta id dobiš kot parameter:
 index.php?id=info
 index.php?id=kazalo

Pred menijem pridelaš ustrezen class:
echo '<div id="menubox" class="m-'.$id.'">';

v css pa poveš kakšen naj bo 'aktiven' meni:
 div.m-info li#m-info a, div.m-kazalo li#m-kazalo a {
  color: ...
  background-image: ...
 }


Zdej pa, če tegale recepta ne razumeš -> RTFM :)

meacho ::

Imam eno vprašanje glede aktivnega menija. Meni imam narejen v javasrcipt, kjer se vrednost spravi kot array. Kako bi pa to naredil v javascript, da si meni zapomni zadnjo vrednost tudi ko v stran includa drugi dokument?

Jackass ::

veteran: Sej si ful lepo na kratko napisu, sam js bi mogoče rabu pr nekaterih stvareh nekolk bl podrobno.

tm pri li sem dodal id=....

Tole me zanima:

Ta id dobiš kot parameter:

index.php?id=info
index.php?id=kazalo

Tega ne razumm najbl. Kaj morm tle narest?


pa še kr se tega tiče:

echo '< div id= "menubox" class="m-'.$id.'">';

A samo tole vrstico (seveda dam v < ?php...?> ), dam pred meni, al morm cel meni dat v echo? Aja pa še to, a ta "menubox", je v mojem primeru "menu"?
jAcKaSS

mte ::

Jackass: id od veterana je isto kot content pri tebi... Oprosti ampak a ni to podobno osnovnošolski logiki?

Ziga Dolhar ::

mte :)

> Zakaj server-side? Saj lahko v vsakem fajlu označi recimo tisti link, ki kaže na ta fajl, takole

To je server-side :-). Sicer pa, da bi to storil, bi moral v vsakem fajlu imet tudi meni -- Jackass pa tega nima, oz. ravno to poskuša "odpravit" z includi :).
https://dolhar.si/

mte ::

Ziga: ups ja, maš prav :) ne vem zakaj sem imel v glavi da se še ne ukvarja s php čeprav je čez celo temo govora o tem :8)
«
1
2


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
!

Vse, kar ste si želeli vprašati o CSS, pa si niste upali. (strani: 1 2 3 423 24 25 26 )

Oddelek: Izdelava spletišč
1298346146 (5283) sunniegoldie
»

meni razporejen po celotni dolžini

Oddelek: Izdelava spletišč
72233 (2101) XzupanX
»

poravnava li elementov

Oddelek: Izdelava spletišč
82143 (2008) boss-tech
»

PHP - nujno! - email forma

Oddelek: Izdelava spletišč
262025 (1707) DonMatejo
»

Nadomestilo FRAME-ov?

Oddelek: Izdelava spletišč
161911 (1610) Jackass

Več podobnih tem