Fast menu på hjemmesider.
Er der nogen af jer, der ved, om man kan lave en fast menu uden at bruge frames?
Jeg skal lve en side til nogle bekandte, men det er absolut betingelse, at venstremenuen bliver stående, også når scroller indholdet.
Det kan selvfølgelig sagtens gøres med frameset, men denne mulighed er jo under afvikling, påstås det, og og frames er ofte blevet udsat for hånlige bemærkninger her på Linuxin, men hvis frames er den eneste mulighed for at få menuen til at blive på sin plads ved scrolling, så bliver det frames.
Kaj
- Log in to post comments
Kommentarer14
Re: Fast menu på hjemmesider.
Jeg kan komme i tanke om to måder du kan gøre det på. Javascript og PHP. Javascript har den ulempe at du er nød til at gå ud fra at brugeren har aktiveret javascript (hvilket langt de fleste har). PHP kræver så at din host understøtter dette.
Javascript (nok ikke en optimal måde at gøre det på):
Indsæt følgende linje der du vil have menuen:
Lav en fil ved navn menu.js i samme mappe der indeholder fx:
document.write("Forside")
Ved PHP ved jeg ikke helt hvordan men jeg kan gætte mig til du laver en PHP fil der indeholder menuen og så kan du blot inkludere denne.
Re: Fast menu på hjemmesider.
Brug divs og sæt overflow til auto ;)
Her har du et link:
http://www.w3schools.com/tags/tag_div.asp
Hvad julemanden vil bruge php eller javascript til i dette tilfælde, er mig en gåde .
Re: Fast menu på hjemmesider.
Jeg ved ikke hvem af os der har ret men jeg forstår altså indlægget som at han vil have en menu der går igen på alle siderne med samme indhold. Hvis der menes en menu der er placeret som en boks på siden er det klart at thn har ret.
Re: Fast menu på hjemmesider.
Som før nævnt, brug
's
ogoverflow
tilauto
i CSS style sheet'et.Hvis overskriften skal være den samme for alle sider, så lav en fil til denne overskrift
overskrift.inc
, som inkluderes på alle siderne:<?php include("overskrift.inc"); ?>
Så er man fri for at bruge frames, hvilket der er mange rigtig gode grunde til at undgå.
Re: Fast menu på hjemmesider.
Jeg mener en menu, som bliver stående og er synlig hele tiden, uanset hvor meget man scroller på indholdssiden. Lige som på min egen hjemmeside, som godt nok er blevet temmelig umoderne med årene. Den blev lavet til en skærmopløsning på 800 x 600 og ser jo lidt dum ud på 1280 x 1024 eller højere.
www.webkaj.dk
Den nye, jeg arbejder på, hedder www.miniatureitune.dk. Den er bedst i 1280 x 1024, men jeg bliver nok nødt til at lave billederne mindre, da målgruppen nok mest har ældre computere.
...
Så gør man det smarte trick, at i div'ens id sætter du den til verticalalign:top
Du laver altså en css fil, lader div'en kalde et css id der passer.
Lad os tage et eksempel
div.minFoersteBox {
color:rgb(188, 238, 104);
background:rgb(82, 139, 139);
border:1px solid rgb(255,255,255);
width:50%;
height:50%;
vertical-align:top;
/*Disse to sættes, så du får den på midten*/
margin-left:auto;
margin-right:auto;
}
I din html fil, gør du således-->
link1
link2
De to ting, skal ikke stå i samme fil.
Re: Fast menu på hjemmesider.
Jeg siger mange tak for forslagene.
Jeg vil arbejde med det, hvis jeg ellers kan få Jasmin (en af mine perserkatte) til at flytte sig sig, så jeg kan se skærmen.
Kaj
Brug style sheets
Derved kan du få mere ensartet layout, bedre overskuelighed og lettere vedligeholdelse.
Der er mange gode tips at hente på http://www.html.dk/. I denne forbindelse vil jeg fremhæve artiklen "Brug CSS til sideopbygning", eksemplet "Sådan laver du en venstrestillet menu".
Prøv her at skrive position:fixed; i stedet for position:absolute; Fixed låser menuen til skærmen, hvor absolute låser til siden.
Se også under Dokumentation, hvor der under W3C standarder er henvisning til specifikationerne for HTML, XHTML og CSS.
./mich
Re: Fast menu på hjemmesider.
position:fixed virker som en drøm til formålet - men ikke på IE6!
Nogle smarte tricks til dette?
position:fixed vs. IE
CSS 2 er fra 1998. Det er IE, der er bagefter, men den er jo stadig ret udbredt (desværre, kan man måske sige).
Jeg så engang en side, hvor dette var demonstreret - layout udelukkende med HTML og CSS - en side med et baggrundsbillede, en nautilussnegl, og en menu, der begge var fixed, og en kolonne med tekst i midten. Der stod også, at det ikke virkede i IE, og der var så vidt jeg husker beskrevet en måde at opnå næsten det samme i IE, men det var vist hverken smart eller kønt.
Desværre kan jeg ikke huske URL'en og har ikke lige kunnet finde den. Måske en anden kan efter beskrivelsen.
./mich
SSI?
Hvis du har en webserver, der understøtter server side includes, kan du jo bruge det - så slipper du for at skulle knudre med PHP.
Re: SSI?
Tja, men det kræver jo kun én linie kode at inkludere indholdet af en menu eller lignende.
mich.Det du henviser til
mich.
Det du henviser til på html.dk, virker ganske rigtigt helt efter hensigten i Firefox, men i såvel IE6 som IE7 bliver menuen bare placeret enten under eller over teksten i den brede spalte. Så kan man godt lave et til den brede spalte med tekstenog fjerne body fra stylesheet, så kommer menuen i den rigtige spalte, men den følger til gengæld med, når der bliver scrollet, og hele ideen var, at den skulle forblive synlig.
Da målgruppen må formodes udelukkende at bruge windows og IE, bliver jeg nødt til foreløbigt at vedblive med at bruge frames.
Yeah, IE rulez!!!
< /sarcasm >
Trist at man skal være afhængig af forældede systemer, som man ikke selv gider bruge.
Du skal nok ikke forvente, at IE forstår ret meget andet end CSS 1, måske nogle få ting i CSS 2.
Dog mener jeg stadig, at CSS er en god ide, så langt det virker. CMS var måske også en mulighed, men jeg kan nu ikke lige huske, om der er nogen, der har den flydende menu, du efterlyser.
./mich