16. juli 2007 - 15:34Der er
33 kommentarer og 2 løsninger
Valg af navigationsbar m.m.
Hej Jeg kunne godt tænke mig at lave en navigationsbar med 5-6 punkter. På et senere tidspunkt skal navigationsbaren kunne udvides til en drop down menu (når siden udvides og der kommer flere punkter).
Hvilket 'sprog' er bedst til at lave en navigationsbar? CSS, Javascript eller et helt andet 'sprog'?
Når jeg har fået tilføjet navigationsbaren, hvordan laver jeg de efterfølgende sider, som har samme design som Hovedsiden? Er der en smart metode, hvor man kan indlæse de øvrige sider, så de vises på hovedsiden (hvorved at navigationsbare bibeholdes)?
Jeg har tænkt mig at lave hjemmesiden i DHtml, php & MySql
Måske er det mest sikkert med css, java kan være slået fra, selv om jeg ikke tror det sker hos så mange. Du kan nemt lave en "hovedside" med menu, sidebar o.s.v. og så bare loade indholdet ind via include i php. Dit indhold kan du egentlig bare have som txt filer som så bliver indsat, alt efter hvilken side man vælger. Jeg bruger selv coolmenus, som er lavet i javascript og det fungerer fint nok i IE og FF. Du kan have flere levels af undermenuer og det er nemt nok at sætte op.
I PHP kan du som sagt indsætte dit indhold, sådan her f.ex.
<?php $id=$_GET['id'];
switch ($id) { case 1: include ("start.txt"); break; case 2: include ("sitemap.txt"); break; o.s.v. o.s.v...... default: include ("start.txt");
}
?> så kaldes de forskellige sider med index.php?id=2 Det er egentlig det eneste PHP du behøver, med mindre du vil bruge en database til dine ting. Du kan også kalde dine "undersider" for .htm, men de bliver egentlig bare indsat i din hovedside. Du kan have alm tekst, og billeder til siden og så have hele layoutet i din hovedside.
Det er mest strukturen, som jeg skal have på plads. Jeg havde tænkt mig, at lave en 'Hovedside' og et antal 'Undersider' (præcis som du lige har forklaret). Nu nævner du, at man kan bruge database - mener du, at man kan lave en 'Hovedside' og så hente alt indhold fra databasen?
Ikke at jeg skal lave det nu, men jeg vil godt bygge min hjemmeside op, så jeg på et senere tidspunkt kan tilføje sitemap og breadcrumbs. Hvordan laver jeg strukturen, så jeg tager højde for disse ting?
Hvis du bare vil skrive noget på dine sider, så behøver du ikke bruge en database. Hvis man skal kunne søge mere i dine sider og f.ex. finde alle sider omhandlende et bestemt emne, så er det databasen. Et eksempel kunne være hvis du vil lave en blog, så kan folk søge på alle indlæg du har tagget med ordet "vejret". Men det findes der færdige scripts til, se evt på wordpress, det er gratis. Det smarte er jo at du kan nøjes med at have hele designet på én side og så bare fylde alt det indhold på som du har lyst til. Du kan stadig godt have forskelligt udseende alligevel, ved at bruge css. En ret nem opstart med css forresten-> http://css.maxdesign.com.au/index.htm
rynke10>> Du kender vel ikke tilfældigvis en god bog som beskriver, hvordan man laver en hjemmeside med bl.a. navigation (samt sitemap og breadcrumbs)? Jeg synes, at jeg mangler nogle eksempler på, hvordan man laver de forskellige ting. Som nybegynder er det altid godt med et eksempel, da det giver en forståelse, hvordan man laver den pågældende ting.
http://www.hjemmesideskolen.dk/ Her er lige lidt grundlæggende, også omkring navigation og breadcrumbs. Ulempen ved en bog, er at den helst skal være ret ny, en bog om hjemmesider der er skrevet i 2001 er jo noget forældet i dag. Der er rigtig mange tutorials på nettet, så der kan du starte.
Det der forvirre mig er, at alle browsere ikke fortolker css koden ens. Når jeg finder et eksempel, så er det en eller flere browsere der fortolker koden anderledes - det er lidt svært at have styr på, når man selv er nybegynder. Jeg troede ellers css var en standard, men det er måske mig som tager fejl?
Jeg prøver at finde en navigationsbar som kan læses af alle browsere...det er noget den bedste løsningen indtil jeg har fået noget mere erfaring med html/css.
Browserne fortolker css NÆSTEN ens ;-) Lad være med at tænke alt for meget på det i starten, bare sørg for at lave det ordentligt og valider dine sider, både med HTML og CSS. Visse browsere er mere "tilgivende" over for fejl, så prøv dine sider af i de browsere der er flest af. Nogen steder kan man se oversigter over hvilke ting der bliver understøttet af forskellige browsere. Hvis folk ikke kan se min side med deres IE2.03 eller Netscape 0.5 så er jeg egentlig ligeglad. Jeg sælger ikke noget på min side, så det er kun dem der går glip af noget. CSS er også en standard, den bliver bare fortolket lidt forskelligt. Problemet er at de forskellige gerne vil overgå hinanden, derfor bygger de ekstra funktioner ind, som så ikke nødvendigvis er understøttet af de andre.
OK. Så har jeg fået det på plads:-) Jeg prøver mig frem og valider mine sider. Jeg holder mig til IE og FireFox. Jeg har fundet et eksempel, så jeg har tænkt mig at bruge. Jeg skal bare lige forstå, hvor jeg skal indsætte php koden? Ellers tror jeg, at jeg har styr på det.
Din CSS kan du sagtens smide i en separat fil, det er lettere. Hvis du vil skifte udseende, f.ex. have et påske tema, en anden farve til jul o.s.v. så kan du bare vælge den fil det passer, i stedet for at rette det hele i din hovedside.
Aller først skal du have din doctype.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <head> <title>Start med css</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <div id="navigation"> <ul id="navigation"> <li><a href="#">Hjem</a></li> <li><a href="#">Om</a></li> <li><a href="#">Services</a></li> <li><a href="#">Medarbejdere</a></li> <li><a href="#">Produkter</a></li> <li><a href="#">Kontakt</a></li> </ul> </div> <?php $id=$_GET['id'];
switch ($id) { case 1: include ("start.txt"); o.s.v. o.s.v.
Undskyld, men koden (19/07-2007 12:09:05) holder ikke vand. Du kan ikke have block-elementer (dine a-elementer) indlejret i inline-elementer (dine li-elementer). Det giver ikke mening og strider lodret mod standarden
rynke10>> Jeg har min css i en separat fil samt erklæret doctype. Jeg undlod det for nemheden skyld. Hvad skriver jeg der hvor der er #? Skriver jeg index.php?id=1 osv.?
olebole>> Hvis koden ikke holder vand, hvordan skal den så skrives?
Du kan enten undlade at gøre dine li-elementer til inline-elementer i CSS'en. Det vil dog nok ikke give dig det ønskede visuelle udtryk. Ellers kan du undlade at gøre dine a-elementer til block-elementer:
Nu så jeg slet ikke på din menu. Når du bruger # har du jo ikke et link. Der skal du i stedet skrive <a href="index.php?id=1">Menupunkt 1</a> Med din php vælger du så hvilken fil der bliver indsat ud fra valg af id.
Din hovedside skal sikkert hedde index.php, det kan du se hos dit webhotel. Du skal uploade siden før det virker, hvis du bare starter den på din egen maskine, så bliver php ikke afviklet, med mindre du installerer en konsol. Du skal altså have det uploaded til serveren og sørge for at de filer du includer også er der.
"Vedr. ccs koden, så kan jeg fortælle ..." >> Ja, desværre så ejer mange kodere ikke seriøsitet eller evne til selvkritik! :o|
Enorme mængder af, hvad du læser om webkode i hæfter, bøger og på WWW, er det rene og skære vås. Det synes at være mere interessant at skrive ét eller andet, end at skrive noget korrekt og brugbart.
Nogle fine eksempler på dette er html.dk, hvor man skal lede rigtig længe efter huller mellem fejlene - og w3schools.com, hvor vi her på E flere gange har været oppe på at finde 5-6 seriøse fejl på én side. Når man tænker på, sidstnævntes sider øjensynligt er skrevet i reklameøjemed og hver især kun indeholder ganske lidt tekst, må det anses som en yderst alvorlig mængde!
Hvorfor i alverden skal du så tro mig? Tjaaahhh ... det _skal_ du heller ikke, men jeg ved, jeg har ret og udlover gerne min PC, hvis du kan lære mig noget andet ;o)
olebole>> Hvis bøger, hæfter og diverse tutorials er fuld med fejl, hvordan lærer man så at kode ordentlig? Er der nogen bøger eller andet som du kan anbefale?
W3C for al vedrørende markup, CSS og DOM (herunder en masse af det, folk fejlagtigt kalder 'JavaScript' ... herunder alle properties og metoder, der har med dokument-objektet og alle DOM-elementerne (HTML-elementerne) at gøre)
Mozilla for JavaScript-referencen
Microsoft for JScript-referencen
Mozilla og Microsoft for de forskellige browser/JS-engine afhængige script-udvidelser (som også fejlagtigt bliver kaldt 'JavaScript' ... herunder window-objektet med alle dets properties og metoder)
Mozilla og Microsoft for andre browserudvidelser og sære ting =)
- men se i øjnene, at webkodning er et fag, det tager årevis at lære ... det er en lang, sej kamp at lære det på 'den hårde' måde.
Jeg har selv undervist multimedie- og webintegratorer og ved derfra, at langt de fleste lærere er på hobby-niveau og burde modtage undervisning i stedet for at give den. Det samme gælder (alt for) mange undervisere på datamatiker studiet ... og sågar også på datalog studiet. Det er desværre meget almindeligt, at datamatikere og dataloger ikke evner at skrive god, valid og hensigtsmæssig frontend kode :o|
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.