Tilpasning til skærm og browser

Størrelse: px
Starte visningen fra side:

Download "Tilpasning til skærm og browser"

Transkript

1 Denne guide er oprindeligt udgivet på Eksperten.dk Tilpasning til skærm og browser Du har lavet en kode, som fungerer fortrinligt på din egen computer. Glad og tilfreds lægger du din hjemmeside på Nettet. Dagen efter får du at vide af dine bekendte, at hjemmesiden ser helt forkert ud hjemme hos dem. Skrevet den 03. Feb 2009 af per1291 I kategorien Programmering / JavaScript Selv om en kodestump virker på din egen computer, så kan du ikke være sikker på at den virker på samme måde på andre computere. Der skal tages højde for, at andre brugere har andre skærme - og andre browsere. Lad os først kigge på, hvordan siden tilpasses andre skærme. FASTSÆT STØRRELSEN AF DET DU VISER Din side ser pæn ud på din egen skærm. Man kan se hele teksten på én gang, altså uden at bruge scroll-pilene. Du vil gerne have siden til at se cirka ligesådan ud på andre skærme. Hvis brugeren har en skærm med en meget lav opløsning eller et meget smalt vindue, eller hvis brugeren har aktiveret "Vis oversigt" i sin browser, så kan det blive nødvendigt at din tekst fylder hele den tilgængelige del af vinduet - og måske er dette ikke engang nok til, at hele teksten kan vises på én gang (selv om det ville være det mest elegante). Så må du finde dig i, at teksten vises med scrollbars. Hvis brugeren har en skærm med meget høj opløsning, og samtidig et meget bredt vindue på sin skærm, så skal din tekst ikke fylde hele vinduet - for så bliver linjerne så lange at de er svære at læse. Siden fylder 600 pixels i bredden. Opgaven består derfor i at definere et tekstområde, som skal være præcis 600 pixels bredt. Metode: 1. Teksten anbringes i en div "BodyDiv", som bringes til at fylde hele den tilgængelige del af vinduet. 2. Bodybredde og Bodyhøjde aflæses, for at se hvor meget SYNLIG plads der i virkeligheden er adgang til. 3. Divbredden sættes til 600 pixels, og Divhøjden sættes automatisk til den nødvendige størrelse. OBS: I punkt 1 har jeg givet "BodyDiv" en lysegrå baggrundsfarve, sådan at du tydeligt kan se hvor meget den fylder. OBS: Aflæsningerne i punkt 2 er i virkeligheden overflødige, men foretages for at tydeliggøre hvad der sker. OBS: I punkt 3 fremkommer en vandret scrollbar, såfremt Bodybredden er smallere end 600 pixels. I bunden af artiklen ses koden, nemlig i dokumentets første javascript. Prøv at køre koden både med og uden "Vis oversigt", og med forskellige vinduesstørrelser, for at se forskellen.

2 (OBS: For at opnå et pænt resultat kunne det være fristende, i stedet at ændre brugerens VINDUESSTØRRELSE efter dine behov. I min første version af denne artikel var det præcis dét jeg gjorde. Men jeg ønsker især at fremme "god programmeringsskik", og ekspertbrugeren roenving gjorde venligt opmærksom på, at det ikke er hensigtsmæssigt at pille ved den vinduesstørrelse, som brugeren har valgt som sin foretrukne. Jeg har derfor i denne version kun vist, hvordan man ændrer på størrelsen af den del af det givne vindue, som skal bruges.) Resten af denne artikel handler om tilpasning til browseren. DET TRADITIONELLE BROWSERCHECK I 1998 lavede jeg min første hjemmeside vha. HTML og Javascript. Jeg lærte de to sprog ud fra oversigter, vejledninger og kodeeksempler på Internet. Men i årenes løb har sprogene udviklet sig, og mange af anvisningerne er nu forældede. Mange af de kodestumper, som brugerne på eksperten.dk indsender, er nogle de har fundet rundt omkring på Internet. En del af dem indeholder browsercheck. Det er ofte tegn på, at programstumpen er nogle år gammel og bør moderniseres. Et browsercheck er en kodestump (ofte kaldet en "browser-sniffer"), som finder NAVNET på brugerens browser. Her har du et eksempel: function browsersnif() if (navigator.useragent.tolowercase().indexof("netscape")>=0) return "Netscape" if (document.all) return "MSIE" return "Ukendt" Funktionen vil returnere "Netscape" hvis den første if-sætning er sand, "MSIE" hvis den anden if-sætning er sand, og "Ukendt" i alle andre tilfælde. Der er brugt to forskellige checkmetoder i den viste funktion. Netscape-checket spørger browseren direkte, hvad den selv hedder. Det er altså et rent NAVNECHECK. Microsoft Internet Explorer-checket spørger browseren, om udtrykket "document.all" overhovedet giver mening for den. Det kunne man kalde et FEATURECHECK. Senere i scriptet vil resultatet af dette browsercheck blive brugt til at vælge imellem, hvilke instruktioner der skal udføres. Her et eksempel (som selvfølgelig ikke virker uden noget mere kode): var browser=browsersnif() if (browser == "Netscape") Netscape_function() if (browser == "MSIE") MSIE_function() NAVIGATOR.USERAGENT Ved at skrive sådan her i adressefeltet i din browser: java script:alert(navigator.useragent) kan du få oplysninger om din egen browser og dit styresystem.

3 I min browser Microsoft Internet Explorer 6.0 er navigator.useragent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; i-navfourf)" I min browser Opera 7.54 er navigator.useragent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.54 [da]" I min browser Netscape 7.2 er navigator.useragent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-us; rv:1.7.2) Gecko/ Netscape/7.2 (ax)" I min browser Mozilla Firefox 1.0 er navigator.useragent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; da-dk; rv:1.7.5) Gecko/ Firefox/1.0" Hvis jeg selv i dag (2005) ville bruge et browsercheck til at fortælle, hvilken af mine browsere der kører min kode lige nu, så kunne det se sådan her ud: function browsersnif() var ua=navigator.useragent.tolowercase() if (ua.indexof("opera")>=0) return "Opera" if (ua.indexof("msie")>=0) return "MSIE" // Bemærk rækkefølgen af msie- og opera-checket! if (ua.indexof("netscape")>=0) return "Netscape" if (ua.indexof("firefox")>=0) return "Firefox" return "Ukendt" // Denne linje tager højde for alle mulige andre browsere, f.eks. Safari alert("browseren er en "+browsersnif()) Opera er en meget kræsen browser - vil kun æde kode, som er meget korrekt. Vil du tjekke om din kode virker næsten alle steder, så brug Opera. Hvis Opera viser din side som den skal, så er det sandsynligt at de fleste browsere gør det samme. Mozilla Firefox er næsten altædende - tolerant over for en del småfejl. Vil du have en browser, der kan forstå næsten alt, så brug Firefox. BROWSERCHECK ER SJÆLDENT OPTIMALT I grunden er browsercheck i mange tilfælde en uhensigtsmæssig metode. Hvis det på nogen måde kan undgås at bruge browsercheck, så er det bedst at gøre dette. Lad være med at spørge browseren hvad den hedder! Grundene er disse: 1. Browsercheck kræver stor viden hos programmøren. Du skal vide præcis hvilke egenskaber hver enkelt browser har. Det er ikke nok at vide, at "nogle browsere gør sådan, og andre browsere gør sådan" - Du skal holde rede på, præcis hvilke browsere der gør hvad. 2. Visse browsere kan indstilles til at give fejlagtige navneoplysninger om sig selv med vilje - jeg forstår ikke rigtig hvorfor, men sådan er det. 3. Browsercheck tager ikke højde for ukendte browsere. Der kan findes browsere på markedet, som jeg aldrig har hørt om - eller der kan blive frigivet en splinterny browser i morgen. Min kode kan derfor ikke tage højde for disse browsere.

4 4. Mange Browsercheck er forældede. Det er omsonst at checke, om brugeren har en Netscape 4 eller en Internet Explorer 3 browser. INGEN kører med sådanne forældede browsere i dag. (Og hvis der alligevel skulle være en enkelt Netscape 4- bruger tilbage i verden, så er vedkommende allerede nu blevet vænnet til, at de fleste moderne sider er "lukket land".) Et browsercheck har normalt begrænset levetid - fordi der hele tiden udkommer nye browsere. Og vi kan ikke engang være sikre på at nye versioner af den samme browser vil være bagud-kompatible. Erfarne programmører er for længst holdt op med at skrive kode, som tager højde for forældede browsere som Internet Explorer 3 og Netscape 4. I de fleste scripts bruger de slet ikke browsercheck. Til gengæld kender disse programmører en masse browsersvagheder, som de derfor mere eller mindre automatisk skriver udenom. ALTERNATIVET: FEATURECHECK Jeg ved, at mine browsere hver for sig har deres særheder. Nogle af disse særheder eller svagheder bliver jeg først opmærksom på, når jeg tester mine sider i de forskellige browsere. Der findes kode, som Netscape ikke kan håndtere, f.eks. "document.all". Heldigvis kan denne kode erstattes af "document.getelementbyid", som alle moderne browsere forstår. Der findes kode, som Internet Explorer ikke kan håndtere, f.eks. "window.innerwidth". Heldigvis kan denne kode erstattes af "document.body.clientwidth", som alle moderne browsere forstår. Det er ofte muligt at finde en notation, som alle browsere forstår. Men i nogle tilfælde er det alligevel nødvendigt at skrive et stykke kode i mere end én version. Man kan i mange tilfælde erstatte et browsercheck med noget andet og i virkeligheden bedre. En gammel talemåde siger: "Du skal gå til hovedet, ikke til halen..." Oplysning om browserens NAVN er HALEN. Oplysning om browserens HÅNDTERING af en konkret kode er HOVEDET. Derfor vil jeg gerne slå til lyd for, at man i stedet for at spørge browseren hvad den hedder, spørger browseren hvordan den vil håndtere en konkret kode. I de fleste tilfælde kan programmøren være ligeglad med, hvilken browser brugeren benytter. Det eneste interessante er at vide, hvilke instruktioner der kan forstås og udføres hos den aktuelle bruger. Med andre ord, et browsercheck er ofte overflødigt. Man kan lave bedre og mere levedygtig kode vha. et Featurecheck: Check hvad browseren GØR (eller VIL gøre) i den KONKRETE situation. Det er stadig vigtigt for programmøren at vide, at browsere opfører sig forskelligt i bestemte situationer. Heldigvis er det som oftest ikke nødvendigt at HUSKE præcis hvilke browsere der gør hvad. Man kan nøjes med at vide, at disse forskelle findes. Og så kan man i det konkrete tilfælde spørge den konkrete browser: Hvordan reagerer DU på denne kode? Du kan aldrig sikre dig 100%, at din side vil se rigtig ud i enhver browser.

5 De færreste er fortrolige med alle browsere og hvilke svagheder de har. De færreste har adgang til at teste en side i alle browsere. De færreste kender den browser, som først kommer på gaden i morgen. En ukendt browser kan have andre svagheder end dem, du selv har kendskab til. Men sandsynligheden er stor for, at den vil reagere på en konkret kode ligesom Opera, Netscape, Firefox eller Explorer. Derfor er Featurecheck oftest bedre end Browsercheck. (En undtagelse er, når man benytter sig af special-features, f.eks. et filter skrevet af Microsoft og udelukkende brugbart i Microsoft Internet Explorer.) EKSEMPEL: EN RULLETEKST Jeg fik til opgave at lave en rulletekst. Den rullende tekst skulle være så lang, at den fyldte mere end det definerede tekstområde på 600 pixels. Teksten skulle køre ud i ét, sådan at den hele tiden blev bragt i forlængelse af sig selv, dvs. rullefeltet måtte aldrig blive tomt. Jeg valgte denne metode (RulleMetode1): 1. Anbring teksten i et rullefelt i form af en div. <Løkke> 2. Rul 1 pixel ad gangen vha. style.left--, indtil du er kommet igennem første bogstav; 3. Flyt første bogstav bagest i din string; 4. Anbring den nye string i din div vha. innerhtml; 5. Nulstil style.left; </Løkke> Denne kode fungerer fint i Internet Explorer og Opera. Men det viser sig at den giver en flakkende tekst i Netscape og Firefox. Disse browsere vil nemlig vise et kortvarigt glimt af en blank div, hvergang man ændrer innerhtml. (Hvis man nøjes med at ændre innerhtml mens rullefeltet er tomt, vil brugeren ikke opleve nogen flakken i Netscape. Men i den bestilte rulletekst må rullefeltet aldrig være tomt. Der vil altid være bogstaver på skærmen.) Så jeg lavede en ny kode i det håb, at problemet hermed var løst (RulleMetode2): 1. Sæt din tekststreng S=S+S førend du anbringer den i rullefeltet; <Løkke> 2. Rul 1 pixel ad gangen vha. style.left--, indtil du er kommet igennem første halvdel af din string; 3. Nulstil style.left; </Løkke> Denne kode fungerer fint i Netscape og Mozilla Firefox. En test viser at koden også fungerer i Internet Explorer. Men i Opera opstår et nyt problem: Rullefeltet bliver bredere end vinduet, sådan at der fremkommer en overflødig scrollbar i bunden af vinduet. Opera medregner åbenbart også det usynlige overflow i bredden! Status er altså:

6 I browseren Opera bør man bruge RulleMetode1. I browserne Netscape og Mozilla Firefox bør man bruge RulleMetode2. I browseren Internet Explorer kan man bruge begge metoder. Man kunne fristes til at bruge et browsercheck: if (browser == "opera") RulleMetode1() else RulleMetode2() Men det ville være en falliterklæring. En række test viser, at: I Netscape og Mozilla Firefox vil teksten aldrig fylde mere end Bodybredden. I Opera og Internet Explorer fylder teksten derimod mere end Bodybredden. Så det lykkedes at erstatte browserchecket med dette Featurecheck: if (finddivbredde(rulletekst+rulletekst) > 600) RulleMetode1() else RulleMetode2() Måske vil enhver browser, der behandler overflow på samme måde som Opera, også lave "flakfri" opdatering af innerhtml. Måske. Jeg kan ikke vide det. Ellers må brugeren finde sig i lidt flakken. Jeg har lavet en generel løsning, som er tilpasset særhederne i alle mine 4 browsere. Jeg har taget højde for de forskelle, som jeg kender til. Intetsteds i min kode spørger jeg om browserens NAVN. Der er ikke garanti for, at min kode giver et pænt resultat i browsere, som jeg ikke kender. Men der vil sikkert være nogle af de ukendte browsere, der i en konkret situation gør ligesom Opera, og andre browsere, der gør ligesom Mozilla Firefox. Og måske er der browsere, som gør noget helt andet. Det kan jeg ikke vide, og det må jeg leve med, indtil en venlig bruger sender mig en meddelelse om fejlen. Hvis jeg udelukkende havde brugt NAVNECHECK i min kode, så ville min kode have ringere chancer for at fungere i de browsere jeg ikke kender. En bemærkning på falderebet: Hvis brugeren manuelt ændrer størrelsen på sit vindue, mens rulleteksten er i gang, så kan der forekomme uhensigtsmæssigheder. Disse uhensigtsmæssigheder kan du selv tage højde for; den sikreste metode er at lave en settimeout, som løbende aflæser vinduets bredde - og ved ændringer tildeler nye værdier til rulle-variablerne. SLUT PÅ ARTIKEL! - Her følger et HTML-dokument: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <html> <head> <meta http-equiv="content-type" content="text/html; charset=iso "> <title>tilpasning til skærm og browser</title> <script language="javascript" type="text/javascript"> /* DETTE SCRIPT SØRGER FOR SKÆRMTILPASNING AF ET TEKSTOMRÅDE */ var DivBredde=600; /* antal pixels i bredden */ function AngivDimensioner()

7 document.getelementbyid("b1").innerhtml=window.screen.availwidth+" pixels"; document.getelementbyid("h1").innerhtml=window.screen.height+" pixels"; document.getelementbyid("b2").innerhtml=document.documentelement.clientwidth+" pixels"; document.getelementbyid("h2").innerhtml=document.documentelement.clientheight+" pixels"; document.getelementbyid("b3").innerhtml=document.getelementbyid("b2").innerhtml; document.getelementbyid("h3").innerhtml=document.getelementbyid("h2").innerhtml; document.getelementbyid("bodydiv").style.height=document.documentelement.clientheight+"px"; function ResizeBodyDiv() document.getelementbyid("b4").innerhtml=divbredde+" pixels"; document.getelementbyid("bodydiv").style.width=divbredde+"px"; document.getelementbyid("bodydiv").style.height="auto"; document.getelementbyid("h4").innerhtml=document.getelementbyid("bodydiv").offsetheight+" pixels"; alert("slut på resize...\n\nprøv igen med forskellig højde og bredde på vinduet, og både med og uden 'Vis oversigt'!") </script> <script language="javascript" type="text/javascript"> /* DETTE SCRIPT SØRGER FOR BROWSERTILPASNING AF EN RULLETEKST */ var Rulletekst=" *** Denne rulletekst fungerer i både Microsoft Internet Explorer 6.0, Opera 7.54, Netscape 7.2 og Mozilla Firefox 1.0"; Rulletekst=changechar(Rulletekst," ","\240"); /* For at undgå problemer med blanke i start og slut */ var Minimumbredde=580; /* mindste tekst der må anbringes i Rullefelt */ var movepixels=1 /* antal pixels der flyttes ad gangen */ var milliseconds=20; /* interval mellem opdateringer */ var Tegnbredde, Antaltegn; /* bruges af Rullemetode1 */ var scrolled, Tekstbredde; /* bruges af Rullemetode2 */ var Timer; /* timeout-variabel */ function changechar(s,oldchar,newchar) return S.split(oldchar).join(newchar); function finddivbredde(s) var U=document.getElementById("usynligdiv"); U.innerHTML=S; var width=parseint(u.offsetwidth); U.innerHTML=""; return width; function findtekstbredde(s) var width=0, U=document.getElementById("usynligtekst"); S = S.split(""); for (var i=0; i<s.length; i++) U.innerHTML=S[i]; width+=parseint(u.offsetwidth); U.innerHTML=""; return width; function RulleMetode1()

8 var id=document.getelementbyid("rullefelt"); Tegnbredde-=movepixels; if (Tegnbredde <= 0) Tegnbredde+=findTekstbredde(Rulletekst.substring(0,1)); Rulletekst=Rulletekst.substring(1,Rulletekst.length)+Rulletekst.substring(0,1); Antaltegn--; var showstring=rulletekst.substring(0,antaltegn), i=antaltegn; while (finddivbredde(showstring) < Minimumbredde) showstring+=rulletekst.substring(i,i+1); i++; Antaltegn=i; id.innerhtml=showstring; id.style.left = Tegnbredde+"px"; Timer=window.setTimeout("RulleMetode1()",milliseconds); function RulleMetode2() scrolled-=movepixels; if (-scrolled >= Tekstbredde) scrolled+=tekstbredde; var id=document.getelementbyid("rullefelt"); id.style.left = scrolled+"px"; id.style.width = (Minimumbredde-scrolled)+"px"; Timer=window.setTimeout("RulleMetode2()",milliseconds); function StartRulletekst() window.cleartimeout(timer); var tekstbredde=findtekstbredde(rulletekst); var W=document.body.clientWidth; /* Skærmbredden */ var L=0; if (W > 600) L=Math.round((W-600)/2); /* Afstanden fra skærmkant til rulletekst */ var Lstyle=document.getElementById("rulleleft").style; Lstyle.left=(-L-20)+"px"; Lstyle.width=(L+20+60)+"px"; /* De 20 px udjævner usikkerhed i f.m. clientwidth) */ document.getelementbyid("rulleright").style.width=(l+60)+"px"; if (finddivbredde(rulletekst+rulletekst) > 600) /* Risiko for en overflødig scrollbar */ alert("rullemetode2 vil medføre at 'rullediv' får en bredde > 600px.\n\nDerfor bruges RulleMetode1"); var showstring="", i=0; while (finddivbredde(showstring) < Minimumbredde) showstring+=rulletekst.substring(i,i+1); i++; Antaltegn=i; Tegnbredde=findTekstbredde(Rulletekst.substring(0,1)); document.getelementbyid("rullefelt").innerhtml=showstring; RulleMetode1(); else alert("rullemetode2 vil IKKE medføre at 'rullediv' får en bredde > 600px.\n\nDerfor bruges RulleMetode2"); Tekstbredde=findTekstbredde(Rulletekst); Rulletekst+=Rulletekst; document.getelementbyid("rullefelt").innerhtml=rulletekst; scrolled=0; RulleMetode2();

9 </script> <style type="text/css"> body font-family:arial,verdana,helvetica,sans-serif; font-size:16px; #usynligtekst position:absolute; left:0px; top:0px; font-weight:bold; height:19px; font-size:15px; visibility:hidden; #usynligdiv position:absolute; left:0px; top:0px; font-weight:bold; height:19px; font-size:15px; visibility:hidden; #BodyDiv background-color:#eee; width:100%; h1 font-size:30px; td font-size:16px; #rullebackground position:relative; left:0px; width:600px; top:0px; height:19px; background-color:#111; #rullefelt position:absolute; left:0px; width:580px; top:0px; height:19px; z-index:3; overflow:hidden; fontweight:bold; color:yellow; font-size:15px; #rulleleft position:absolute; left:0px; width:60px; top:0px; height:19px; z-index:4; backgroundcolor:white; #rulleright position:absolute; left:540px; width:60px; top:0px; height:19px; z-index:4; backgroundcolor:white; </style> </head> <body onload="angivdimensioner()"> <!-- Den følgende del af body indeholder tabellen --> <center> <div id="bodydiv"> <h1>tilpasning til skærm</h1> <table width="80%" cellspacing="0"> <tr><td width="50%"></td><td width="50%"></td></tr> <tr bgcolor="yellow"><td>skærmbredde:</td><td id="b1" align="center" <tr bgcolor="cyan"><td>skærmhøjde:</td><td id="h1" align="center" <tr bgcolor="yellow"><td>synlig Bodybredde:</td><td id="b2" align="center" <tr bgcolor="cyan"><td>synlig Bodyhøjde:</td><td id="h2" align="center" </table> <h1>"bodydiv" før Resize:</h1> <table width="80%" cellspacing="0"> <tr><td width="50%"></td><td width="50%"></td></tr> <tr bgcolor="yellow"><td>maksimal synlig Divbredde:</td><td id="b3" align="center" <tr bgcolor="cyan"><td>maksimal synlig Divhøjde:</td><td id="h3" align="center" </table> <br> <button onclick="resizebodydiv()">udfør resize</button> <p> <h1>"bodydiv" efter Resize:</h1> <table width="80%" cellspacing="0"> <tr><td width="50%"></td><td width="50%"></td></tr> <tr bgcolor="yellow"><td>aktuel Divbredde:</td><td id="b4" align="center" <tr bgcolor="cyan"><td>aktuel Divhøjde:</td><td id="h4" align="center"

10 </table> [/div] <!-- id="bodydiv" --> </center> <!-- Den følgende del af body indeholder rulleteksten --> <center> <br> <button onclick="startrulletekst()">start rulletekst</button> <p> <div id="rullebackground"> <div id="usynligtekst">[/div] <div id="usynligdiv">[/div] <div id="rullefelt">[/div]<div id="rulleleft"> [/div]<div id="rulleright"> [/div] [/div] <!-- id="rullebackground" --> </center> </body> </html> Kommentar af roenving d. 30. Jul Det ser ikke ud til at man kan fjerne irrelevante kommentarer, så man må vel nøjes med at konstatere, at den deaktiverede bruger ingeborg08 bare har lukket l*** ud... Kommentar af foxmulder58 d. 31. Jul Fin artikel hvor du går i dybden og hvor du illustrerer hvordan man får bugt med de problemer der kan være med en fremvisning af en side korrekt i en given browser. Nogle af ekspemplerne er lidt svære at forstå, men du kunne have afsluttet din artikel med et eksempel på hvordan man løser problemet uden JavaScript (i tilfælde af brugeren skulle have deaktiveret selvsamme i browseren). Eventuelt en brug af flere designs til forskellige opløsninger. mvh Mads Kommentar af qtax87 (nedlagt brugerprofil) d. 29. Sep ingeborg08> slap da lige af! Fin artikel synes der er mange god eksempler, og gode tanker/ider omkring brugeren af det. Kommentar af serverservice d. 16. Aug En artikel som jeg har ledt længe efter, men skal bruge lidt mere tid på de detaljer. Mange detaljer - Godt lavet og fuld score herfra. Kommentar af visualdeveloper d. 15. Aug Kommentar af ingeborg08 d. 29. Jul Mage til lorteartikel og makværk skal man sørme lede længe efter!!! Du må have en dårlig smag i munden.

Nu skal vi især se på <font> og <center> samt centrering af hele siden på skærmen.

Nu skal vi især se på <font> og <center> samt centrering af hele siden på skærmen. Validering 4 Nu skal vi især se på og samt centrering af hele siden på skærmen. Det er i HTML ikke forbudt at bruge koden , men lad nu være alligevel, du får blot en masse valideringsproblemer.

Læs mere

Form og dens underlige box model

Form og dens underlige box model Denne guide er oprindeligt udgivet på Eksperten.dk Form og dens underlige box model Denne artikel handler om hvilke problemer man som webudvikler kan komme ud for, og hvordan man løser dem. Jeg kommer

Læs mere

Denne artikel er til dem der ønsker at vide mere om hvad CSS er og hvad CSS kan bruges til hvad angår WWW.

Denne artikel er til dem der ønsker at vide mere om hvad CSS er og hvad CSS kan bruges til hvad angår WWW. Denne guide er oprindeligt udgivet på Eksperten.dk CSS - en gennemgang Denne artikel er til dem der ønsker at vide mere om hvad CSS er og hvad CSS kan bruges til hvad angår WWW. Der er lidt CSS historie

Læs mere

Søg og erstat med RegExp

Søg og erstat med RegExp Denne guide er oprindeligt udgivet på Eksperten.dk Søg og erstat med RegExp Begrebet RegExp præsenteres her, og du får et lille program så du selv kan eksperimentere med RegExp. Skrevet den 07. Feb 2009

Læs mere

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online. Denne guide er oprindeligt udgivet på Eksperten.dk Hvem er online? Online script, som tager højde for at der kan være flere personer, som har den samme IP-adresse. Scriptet viser hvor lang tid brugeren

Læs mere

I denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.

I denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen. Denne guide er oprindeligt udgivet på Eksperten.dk Grundlæggende PHP I denne artikel, vil der blive gennemgået de grundlæggende PHP-funktioner, såsom udskrift til skærmen, tid og dato og if-sætningen.

Læs mere

Projekt i Programmering C Menu til hjemmeside.

Projekt i Programmering C Menu til hjemmeside. Projekt i Programmering C Menu til hjemmeside. 10-12-2004 Holstebro HTX Bent Arnoldsen Synopsis. Projektet her er en menu til hjemmesider, som er lavet så den er let at tilrette, når man tilføjer eller

Læs mere

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06.

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06. Ordbøgerne.dk Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06 Side 1 af 35 Indholdsfortegnelse Indledning:...3 Design...4 Visuelt design:...4

Læs mere

Beginning CSS and Web Development kap. 1 11

Beginning CSS and Web Development kap. 1 11 Beginning CSS and Web Development kap. 1 11 Plan Xhtml opbygning CSS Divs, class, id Baggrunde, farver og billeder Tekst Links Lister Tabeller Stand up programmering Xhtml vs. html i XHTML skal alle elementer

Læs mere

Dynamisk PHP design OPDATERET

Dynamisk PHP design OPDATERET Denne guide er oprindeligt udgivet på Eksperten.dk Dynamisk PHP design OPDATERET I har måske undret jer over "http://bla.dk/?side=kontakt", her beskriver jeg hvordan, og hvorfor Skrevet den 03. Feb 2009

Læs mere

//Udskriver System.out.println("Hej " + ditfornavn + " " + ditefternavn + "."); System.out.println("Du er " + dinalder + " aar gammel!

//Udskriver System.out.println(Hej  + ditfornavn +   + ditefternavn + .); System.out.println(Du er  + dinalder +  aar gammel! Denne guide er oprindeligt udgivet på Eksperten.dk Brugerinput i Java Denne her artikel gennemgår diverse ting ved brug af brugerinput i Java. Den starter med det simple og fortæller derefter skridt for

Læs mere

Mozilla Firefox (tidligere Firebird): Fremhæve ord

Mozilla Firefox (tidligere Firebird): Fremhæve ord Denne guide er oprindeligt udgivet på Eksperten.dk Mozilla Firefox (tidligere Firebird): Fremhæve ord Du kender sikkert Google Værktøjslinjen til Internet Explorer, ellers har du sikkert hørt om den. I

Læs mere

Ratingsystem i PHP og MySQL

Ratingsystem i PHP og MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Ratingsystem i PHP og MySQL Lær at lave et system til at vise rating/bedømmelse på artikler og nyheder. Skrevet den 03. Feb 2009 af virtual1ty I kategorien

Læs mere

I denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud.

I denne artikel vil jeg gennemgå hvordan en side for RSS Live Bogmærke kan se ud. Denne guide er oprindeligt udgivet på Eksperten.dk RSS "Live Bogmærke" I denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud. Skrevet den 10. Feb 2009 af madsass I kategorien

Læs mere

Se hjemmesiden på:

Se hjemmesiden på: Se hjemmesiden på: www.share-connect.dk Dokumentation Opgavebeskrivelse Det lokale erhvervsnetværk, Share & Connect skulle have designet og programmeret sin nye hjemmeside, hvor de ville kunne have mulighed

Læs mere

Hjælp under login på Mit DLR Oktober 2015

Hjælp under login på Mit DLR Oktober 2015 Hjælp under login på Mit DLR Oktober 2015 Jeg logger ind med bruger-id og nøglekort og får at vide, at der ikke er nogen sager i DLR Der er logget ind med forkert NemID. Vi oplever mange henvendelser,

Læs mere

Anvendelse af metoder - Programmering

Anvendelse af metoder - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Anvendelse af metoder - Programmering En forhåbentlig rigtig god forklaring på hvad metoder er og hvordan de anvendes. Lidt om private og public, retur

Læs mere

Hvad er Objekter - Programmering

Hvad er Objekter - Programmering Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som

Læs mere

Kontrol-strukturer i PHP

Kontrol-strukturer i PHP Denne guide er oprindeligt udgivet på Eksperten.dk Kontrol-strukturer i PHP Denne artikel gennemgår kontrolstrukturer i PHP. 'if', 'switch', 'while' og 'for' bliver gennemgået. Den forudsætter lidt grundlæggende

Læs mere

Tagwall med Php & MySQL

Tagwall med Php & MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Tagwall med Php & MySQL Her laver vi en tagwall i Php & MySQL... jeg forklarer dog ikke så meget, men jeg håber du kan få det til at blive til en tagwall

Læs mere

CentOS 7. Lavet af Ali Sarac og Andreas Jensen

CentOS 7. Lavet af Ali Sarac og Andreas Jensen CentOS 7 Lavet af Ali Sarac og Andreas Jensen 3.8.2017 Indholdsfortegnelse Konklusion... 3 Installer CentOS 7 i VMware... 3 Installation af Apache, PHP5 og vores HTML side... 7 2.4 spørgsmål... 12 Kildekoder...

Læs mere

Dokumentation. Karen-Louise Fejerskov

Dokumentation. Karen-Louise Fejerskov Dokumentation Grafisk Workflow Et af produkterne, jeg skulle lave, var et redesign af FreQuence s info hjemmeside. A B Punkt 1 Ansvar: Jeg har selv stået for opsætningen af hjemmeside og selv bestemt,

Læs mere

Koden i denne guide vil kun virke i Flash MX 2003 og MX ikke ældre versioner!

Koden i denne guide vil kun virke i Flash MX 2003 og MX ikke ældre versioner! Denne guide er oprindeligt udgivet på Eksperten.dk Slideshow - Guide Denne guide gennemgår grundigt og forklarende hvordan man i Flash laver et slideshow med simpel fade-effekt med billeder hentet dynamisk.

Læs mere

I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke

I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke Denne guide er oprindeligt udgivet på Eksperten.dk MySQL for nybegynder I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen

Læs mere

Med register_globals = On får du automatisk adgang til en række variabelnavne i dit script.

Med register_globals = On får du automatisk adgang til en række variabelnavne i dit script. Denne guide er oprindeligt udgivet på Eksperten.dk Register Globals Off Lad os slå en ting fast med det samme - register_globals = Off er en god ting, i hvert fald set ud fra et sikkerhedsmæssigt synspunkt.

Læs mere

Webmaster Sweet-Swing.dk Websidens opbygning. Som eksempel er brugt siden om korets målsætning som den vises i editoren.

Webmaster Sweet-Swing.dk Websidens opbygning. Som eksempel er brugt siden om korets målsætning som den vises i editoren. Opbygning Som eksempel er brugt siden om korets målsætning som den vises i editoren. I editoren vises tabellinierne, selvom de på den færdige side i vores tilfælde er usynlige, bortset fra den sorte ramme

Læs mere

At klippe en streng over på det mest hensigtsmæssige sted

At klippe en streng over på det mest hensigtsmæssige sted Denne guide er oprindeligt udgivet på Eksperten.dk At klippe en streng over på det mest hensigtsmæssige sted Formålet med denne artikel er at kaste lidt lys over, hvordan man klipper en streng over på

Læs mere

workflow Programmer: Om opgaven: Kvalitetsvurdering: Afsender: Modtager: Cathrine Laulund Web: Dreamweaver Billedbehandling: Photoshop

workflow Programmer: Om opgaven: Kvalitetsvurdering: Afsender: Modtager: Cathrine Laulund Web: Dreamweaver Billedbehandling: Photoshop Om opgaven: For et halvt år siden overtog nogle bekendte værtshuset Midtskiws i Skive. De havde derfor brug for en ny hjemmeside, som kunne fungere som et online informationssted og visitkort for deres

Læs mere

ECdox som favorit. Indledning 1. Internet Explorer 2. Chrome 4. Safari 5. Favorit på mobile enheder 6 Android 6 IOS 7. ECdox på mobile enheder 7

ECdox som favorit. Indledning 1. Internet Explorer 2. Chrome 4. Safari 5. Favorit på mobile enheder 6 Android 6 IOS 7. ECdox på mobile enheder 7 ECdox som favorit Indledning 1 Internet Explorer 2 Chrome 4 Safari 5 Favorit på mobile enheder 6 Android 6 IOS 7 ECdox på mobile enheder 7 Indledning Dette dokument beskriver hvordan man opretter og arbejder

Læs mere

Sådan skriver du artikler til Eksperten!

Sådan skriver du artikler til Eksperten! Denne guide er oprindeligt udgivet på Eksperten.dk Sådan skriver du artikler til Eksperten! Når du skriver artikler handler det om at få den ud til de rigtige personer, og vise den frem så den er let forståelig.

Læs mere

Det er primært relevant for dem hvor der arbejdes på en gammel bærbar computer, som ikke har en stærk processer og nok ram, at gøre godt med.

Det er primært relevant for dem hvor der arbejdes på en gammel bærbar computer, som ikke har en stærk processer og nok ram, at gøre godt med. Denne guide er oprindeligt udgivet på Eksperten.dk Optimer XP manuelt! Jeg beskriver 9 skridt man kan udføre hvis man er interesseret i, at gøre XP hurtigere ved start, nedlukning og generelt! Hvis du

Læs mere

Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette.

Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette. Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette. Spørgsmålet er nu, hvordan laver man sådan en side? Du skal have et såkaldt webhotel, hvilket jeg

Læs mere

Start på javascript. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 03. Feb 2009 af webstuff I kategorien Programmering / JavaScript

Start på javascript. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 03. Feb 2009 af webstuff I kategorien Programmering / JavaScript Denne guide er oprindeligt udgivet på Eksperten.dk Start på javascript En begynder artikel til javascript som vil gennemgå: 1: Intro 2: Variabler 3: Arrays 4: Matematik 5: Betingelser 6: Løkker 7: Funktioner

Læs mere

Afsending af s vha. ASP

Afsending af  s vha. ASP Denne guide er oprindeligt udgivet på Eksperten.dk Afsending af emails vha. ASP Det kan ofte være praktisk at afsende emails fra sin hjemmeside. Denne artikel tager udgangspunkt i komponenten JMail fra

Læs mere

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel: Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra

Læs mere

GRAFISK WORKFLOW H1 MARIA SCHELDE

GRAFISK WORKFLOW H1 MARIA SCHELDE GRAFISK WORKFLOW H1 MARIA SCHELDE DOKUMENTATION Opgaven Arkitekt Mette Schelde skulle have designet og programmeret et website, hvorpå hun kunne præsentere hendes produkter. Designkrav Sitet skal være

Læs mere

Denne artikel er en detaljeret gennemgag af det fundamentale i batchfiler til hjemmebrug :-) FEEL THE POWER! ;-)

Denne artikel er en detaljeret gennemgag af det fundamentale i batchfiler til hjemmebrug :-) FEEL THE POWER! ;-) Denne guide er oprindeligt udgivet på Eksperten.dk Batch genopfriskning Denne artikel er en detaljeret gennemgag af det fundamentale i batchfiler til hjemmebrug :-) FEEL THE POWER! ;-) Skrevet den 03.

Læs mere

Password-beskyttelse af visse filer

Password-beskyttelse af visse filer W EB DESIGN 101 K ODEORDSBESKYTTELSE A F VISSE FI LER Password-beskyttelse af visse filer P å et websted kan det være interessant kun at give en del af brugerskaren adgang til visse filer. Der er en mængde

Læs mere

Forståelse for grafisk produktion og workflow

Forståelse for grafisk produktion og workflow Forståelse for grafisk produktion og workflow Fallulah hjemmeside Opgaven: Blev stillet i forbindelse med forløbet avanceret webdesign, jeg har hverken fået karakter eller bedømmelse på den. Opgaven bestod

Læs mere

Forskellige Java versioner

Forskellige Java versioner Denne guide er oprindeligt udgivet på Eksperten.dk Forskellige Java versioner Denne artikel beskriver lidt om de forskellige Java versioner. Den forklarer J2SE/J2ME/J2EE, plugin/jre/sdk og Sun Java/Microsoft

Læs mere

Undtagelseshåndtering i C#

Undtagelseshåndtering i C# Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide

Læs mere

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003 Side 1 af 8 Dato: 14-05-2003 Til Sigurd Som aftalt vil jeg her fremsende vores program til vores 80C535 kit og display. Det gik jo ud på at vi skulle starte med at få den til at intialiserer displayet,

Læs mere

Encoding:...1 Et tegn sæt (character set):...1 UTF-8 og UTF-16 (Unicode):...2

Encoding:...1 Et tegn sæt (character set):...1 UTF-8 og UTF-16 (Unicode):...2 Encoding:...1 Et tegn sæt (character set):...1 UTF-8 og UTF-16 (Unicode):...2 Encoding: Vi har tidligere set på spørgsmålet om et XML dokuments encoding. Det er generelt altid en god ide at gemme et dokument

Læs mere

Kalender med mailingliste

Kalender med mailingliste Kalender med mailingliste Side 1 af 11 Log ind på din hjemmeside, som du gør, når du opdaterer den. Gå herefter ind på afsnittet Moduler. Tryk på Installer udfor Kalender. Side 2 af 11 Nu dukker nedenstående

Læs mere

GRAFISK PRODUKTION & WORKFLOW. Endotest website

GRAFISK PRODUKTION & WORKFLOW. Endotest website GRAFISK PRODUKTION & WORKFLOW Endotest website DOKUMENTATION OPGAVEN: Endotest ApS ønskede at redesigne deres hjemmeside, så den fremstår mere professionel og enkel. Derudover skal det nye site præsentere

Læs mere

Procesbeskrivelse - Webprogrammering

Procesbeskrivelse - Webprogrammering Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...

Læs mere

Programmering i Javascript

Programmering i Javascript Programmering i Javascript 1. Introduktion HTML er et fortrinligt værktøj til at strukturere og præsentere information, men hvis web siderne skal være interaktive, så der kan reageres på brugerens handlinger,

Læs mere

Upload af billeder/filer for nybegyndere Del. 2

Upload af billeder/filer for nybegyndere Del. 2 Denne guide er oprindeligt udgivet på Eksperten.dk Upload af billeder/filer for nybegyndere Del. 2 I denne Del vil jeg ikke gaa saa dybt i fil upload som i sidste. Jeg vil i stedet forklare om funktioner

Læs mere

Vejledning i upload af serier til Danske tegneseriskaberes app.

Vejledning i upload af serier til Danske tegneseriskaberes app. Vejledning i upload af serier til Danske tegneseriskaberes app. En kort intro Version 1.2 22/11/2012 Danske Tegneserieskabere har lavet appen for at give medlemmer og andre en nem adgang til at publicere

Læs mere

jquery - selectors, attributes, traversing og manipulation

jquery - selectors, attributes, traversing og manipulation Denne guide er oprindeligt udgivet på Eksperten.dk jquery - selectors, attributes, traversing og manipulation Jeg vil med denne første artikel fra mig om jquery komme kort ind på jquerys vidunderlige verden.

Læs mere

Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette.

Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette. Lad os lave en hjemmeside. Kikker du på http://www.olehasselbalch.dk, vil du højst sandsynligt se dette. Spørgsmålet er nu, hvordan laver man sådan en side? Du skal have et såkaldt webhotel, hvilket jeg

Læs mere

Drop tables til design, og få fuld udbytte af CSS!

Drop tables til design, og få fuld udbytte af CSS! Denne guide er oprindeligt udgivet på Eksperten.dk Drop tables til design, og få fuld udbytte af CSS! Fremtidens hjemmeside-udvikling består af ganske lidt HTML, som er logisk opbygget, samt en masse CSS,

Læs mere

Lav din egen forside i webtrees

Lav din egen forside i webtrees Lav din egen forside i webtrees Du behøver ikke at kunne kode eller gøre noget advanceret for at designe din helt egen forside i webtrees. Alt du skal gøre er bare at gøre brug af den indbygget editor.

Læs mere

Lav en hjemme side der kan sælge fly billetter til en stor i Europa.

Lav en hjemme side der kan sælge fly billetter til en stor i Europa. EKSAMENS OPGAVE Lav en hjemme side der kan sælge fly billetter til en stor i Europa. Det første jeg startede ud med var at brainstorme hvad det var jeg skulle bruge i min side da jeg nu ved hvad den skal

Læs mere

Delphi og Databaser for begyndere

Delphi og Databaser for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Delphi og Databaser for begyndere Denne artikel handler om hvordan man udnytter noget af det bedste i Delphi: Dets gode muligheder for integrering med

Læs mere

Grafik & Billede weloveorganic.com webshop

Grafik & Billede weloveorganic.com webshop Grafik & Billede weloveorganic.com webshop Opgaven og afsender: Weloveorganic.com er en forholdsvis ny virksomhed, der pånuværende tidspunkt udelukkende sælger økologisk tøj til kvinder. På længere sigt

Læs mere

Arrays og deres slægtskab med objects

Arrays og deres slægtskab med objects Denne guide er oprindeligt udgivet på Eksperten.dk Arrays og deres slægtskab med objects Grundlæggende beskrivelse af arrays, deres oprettelse og brug. For den lidt mere øvede er der også en snak om associative

Læs mere

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),

Læs mere

PHP Snippets. De små korte. Skrevet af Daniel Pedersen

PHP Snippets. De små korte. Skrevet af Daniel Pedersen PHP Snippets De små korte Skrevet af Daniel Pedersen Indhold PHP Snippets De små korte er en samling af små og praktiske kode eksempler med kort forklaring, som med formål at kunne benyttes til opsalgsværk

Læs mere

GRAFISK WORKFLOW OPGAVEBESKRIVELSE KVALITETSVURDERING HJÆLPEMIDLER BROWSER BRUGERVENLIGHED/USABILLITY

GRAFISK WORKFLOW OPGAVEBESKRIVELSE KVALITETSVURDERING HJÆLPEMIDLER BROWSER BRUGERVENLIGHED/USABILLITY GRAFISK WORKFLOW OPGAVEBESKRIVELSE Min kunde er en ung mand som ønskede at få lavet en hjemmeside til hans fremtidig firma, den skulle være responsiv og simpel. Da kunden ikke havde noget ønske om selv

Læs mere

Manual til AVG Antivirus

Manual til AVG Antivirus Manual til AVG Antivirus Det anbefales, at alle brugere benytter sig af et antivirus-program. Formålet med programmet er at forhindre din computer i at blive smittet med virus. Virus-inficerede computere

Læs mere

Her vil jeg forsøge at gennemgå hvordan vi kan opnå at centrere en»div-container«både vertikalt og horisontalt i browser vinduet.

Her vil jeg forsøge at gennemgå hvordan vi kan opnå at centrere en»div-container«både vertikalt og horisontalt i browser vinduet. Side 1 Her vil jeg forsøge at gennemgå hvordan vi kan opnå at centrere en»div-container«både vertikalt og horisontalt i browser vinduet. Dette er nogle gange et ønske fra den enkelte kunde, som blot ønsker

Læs mere

Nyhedssystem med mailingliste

Nyhedssystem med mailingliste Nyhedssystem med mailingliste Side 1 af 12 Log ind på din hjemmeside, som du gør, når du opdaterer den. Gå herefter ind på afsnittet moduler. Tryk på Installér ud for OLO Nyheder. Side 2 af 12 Nu dukker

Læs mere

Manual til administration af online booking

Manual til administration af online booking 2016 Manual til administration af online booking ShopBook Online Med forklaring og eksempler på hvordan man konfigurerer og overvåger online booking. www.obels.dk 1 Introduktion... 4 1.1 Formål... 4 1.2

Læs mere

Gæstebog med validering opbygget med MySQL

Gæstebog med validering opbygget med MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Gæstebog med validering opbygget med MySQL Dette er en simpel gæstebog, som kan hjælpe folk med at lave en velfungerende gæstebog uden alt for meget arbejde.

Læs mere

Indledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål.

Indledning. MIO er optimeret til Internet Explorer. Læs endvidere under Ofte stillede spørgsmål. Indhold Indledning... 3 Søgefunktioner... 4 Søgning fra forsiden... 5 Søgning under menupunktet Instrument... 6 Sådan får man vist instrumenterne i en bestemt afdeling... 7 Sådan ændrer man status på et

Læs mere

Arrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP

Arrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP Denne guide er oprindeligt udgivet på Eksperten.dk Arrays i PHP De fleste som har skrevet omfattende scripts, er før eller siden stødt på problemet med at de bliver vanskelige at overskue hvis man bruger

Læs mere

Send fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende fra Java.

Send  fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende  fra Java. Denne guide er oprindeligt udgivet på Eksperten.dk Send email fra Java Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende email fra Java. Simple eksempler ikke noget vildt

Læs mere

PHP Quick Teknisk Ordbog

PHP Quick Teknisk Ordbog PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,

Læs mere

I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal.

I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Denne guide er oprindeligt udgivet på Eksperten.dk Afrund til helt tal I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Skrevet den 03. Feb 2009 af tjomsen I kategorien

Læs mere

Dokumentation af computerens anatomi

Dokumentation af computerens anatomi Dokumentation af computerens anatomi Vi lavede en quiz som skulle lære de mindreårige om computerens anatomi og hvordan delene fungerer. Vi fordelte opgaverne og begyndte så at designe quizzen i JavaScript

Læs mere

VIS NOGET ANDET, MENS WEBSIDEN

VIS NOGET ANDET, MENS WEBSIDEN VIS NOGET ANDET, MENS WEBSIDEN INDLÆSES E Artiklen beskriver, hvorledes du kan give indtryk af en hurtigere indlæsningstid for en webside ved at vise noget, mens den egentlige side bygges op. n lang indlæsningstid

Læs mere

IT projekt uge 4 9. Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013

IT projekt uge 4 9. Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013 PHP-Projekt IT projekt uge 4 9 Marie Vinter, Roskilde Tekniske Gymnasium, klasse 2.6 IT, bw, uge 4 9 2013 4-3-2013 Indholdsfortegnelse Indledende afsnit... 2 Brainstorm... 2 User stories... 2 Problemformulering...

Læs mere

Brugervejledning til Design Manager Version 1.02

Brugervejledning til Design Manager Version 1.02 Brugervejledning til Design Manager Version 1.02 Indholdsfortegnelse 1. Introduktion... 3 1.1 Det kan du med HostedShop Design Manager... 3 1.2 Feature list... 3 2. Design... 4 3. Filer og CSS... 4 3.1

Læs mere

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen...

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... Modul 2 Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... 6 Opgave... 6 POST/GET og formular... 6 Opgaver...

Læs mere

For dig som skal levere programmer til bideo.dk

For dig som skal levere programmer til bideo.dk For dig som skal levere programmer til bideo.dk Oktober 2011 - Version 5 INDLEDNING... 2 ANVENDELSE AF B2B.BIDEO.DK... 2 Den offentlige og den beskyttede webside... 2 Processen... 2 Før du bruger systemet

Læs mere

Efterlyst! Introduktion HTML & CSS. I dette projekt skal du lære, hvordan du laver din egen plakat. Arbejdsliste. Test dit Projekt.

Efterlyst! Introduktion HTML & CSS. I dette projekt skal du lære, hvordan du laver din egen plakat. Arbejdsliste. Test dit Projekt. HTML & CSS 1 Efterlyst! All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Introduktion

Læs mere

Regulære udtryk, 2. del

Regulære udtryk, 2. del Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 2. del Artiklen uddyber mange af de begreber, som blev introduceret i den 1. artikel. Den burde dog kunne læses alene, hvis man allerede

Læs mere

Fremstilling af en hjemmeside

Fremstilling af en hjemmeside Fremstilling af en hjemmeside Du kan vise en hjemmeside på to måder. Enten ved at lade din computer virke som en server, eller ved at købe dig et såkaldt webhotel. Dette er en nem måde, og det er ikke

Læs mere

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det?

Web sider. Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? Introduktion: Har du nogensinde spekuleret over, hvordan det verdesomspændende internet virker og hvordan man snakker med det? I dag skal du lære at lave hjemmesider, så du også kan bidrage til at opbygge

Læs mere

TYPO3 TRIN FOR TRIN 3

TYPO3 TRIN FOR TRIN 3 TYPO3 TRIN FOR TRIN 3 De indledende øvelser er fuldstændig de samme som i TYPO3 TRIN FOR TRIN 1 side 1-2. Du åbner altså din browser, skriver ale.dk/typo3 i Adressefeltet, og klikker på ordet Side i menuen

Læs mere

JavaScript. nedarvning.

JavaScript. nedarvning. JavaScript er et sprog, der kan give en hjemmeside mere funktionalitet og gøre den interaktiv, så den reagerer på læsernes handlinger. CGI (Common Gateway Interface) har hidtil været de protokoller, man

Læs mere

Loginsystem (med MySQL)

Loginsystem (med MySQL) Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem (med MySQL) Dette er en guide til, hvordan man kan lave et loginsystem med php og muligvis også med sessioner og MySQL Skrevet den 02. Feb

Læs mere

Opkobling af COMFORT:NET til internettet 1. Registrering via ezr home.de

Opkobling af COMFORT:NET til internettet 1. Registrering via ezr home.de 1. Registrering via ezr home.de 1. Indtast www.ezr home.de i din foretrukne internet browser. (windows explorer, Microsft Edge, Google Chrome, Mozilla Firefox etc.) Nedenstående interface vises. Klik dernæstt

Læs mere

Guide til Umbraco CMS

Guide til Umbraco CMS web Guide til Umbraco CMS Indhold Indledning 3 Kompatible browsere 3 Log ind i Umbraco 4 Content-delen 5 Indholdstræet 5 Tilføjelse af en side/sektion 7 Sortering af indhold 12 Galleri 14 Mediebibliotek

Læs mere

GRAFISK WORKFLOW. Kasper Staal - Portfolio - H2

GRAFISK WORKFLOW. Kasper Staal - Portfolio - H2 GRAFISK WORKFLOW Kasper Staal - Portfolio - H2 Opgaven Denne opgave bestod i at design et website til min egen virksomed 3DService.dk. Websitet skulle være responsivt, og indeholde de mest gængse informationer

Læs mere

BRUGER KURSUS RAMBØLL HJEMMESIDE

BRUGER KURSUS RAMBØLL HJEMMESIDE Til Forsyningsvirksomheder i Danmark Dokumenttype Brugervejledning Rambøll Hjemmeside Full Responsive Dato Oktober 2017 BRUGER KURSUS RAMBØLL HJEMMESIDE BRUGER KURSUS RAMBØLL HJEMMESIDE Revision 01 Dato

Læs mere

TEKNISK DOKUMENTATION FAKTURA LAYOUT ABAQUE VERSION 2.0

TEKNISK DOKUMENTATION FAKTURA LAYOUT ABAQUE VERSION 2.0 TEKNISK DOKUMENTATION FAKTURA LAYOUT ABAQUE VERSION 2.0 INTRODUKTION... 3 SKABELON OPBYGNINGEN... 3 BYG DIN EGEN SKABELON... 3 INDSÆT FELTER... 3 INDSÆT VARELINJER... 3 FILNAVN... 4 LISTE OVER FELTER...

Læs mere

portfolio GRAFISK WORKFLOW

portfolio GRAFISK WORKFLOW Grafisk Workflow Opgaven Der skal laves hjemmeside til et lille privat bageri. Kunden ønsker et overskueligt site. Hjemmesiden skal kort og godt fortælle om Skejby Centrets Bageri og deres produkter og

Læs mere

Sådan tager du grundkurset i hjv.dk

Sådan tager du grundkurset i hjv.dk Sådan tager du grundkurset i hjv.dk Hjemmeværnskompagni Jyske Ås 30. april 2015 1 Kom i gang med Forsvarets Elektroniske Skole (FELS) Alle medlemmer i HJV skal tage et grundkursus i at bruge hjv.dk. Dette

Læs mere

FBS for praktikere Fyn. Notifikation og print skabeloner

FBS for praktikere Fyn. Notifikation og print skabeloner FBS for praktikere Fyn Notifikation og print skabeloner 1.Velkomst v/anton Helms 2.Introduktion til HTML/CSS/Freemarker v/kent Gottschalk Hansen. 3.Skabeloner i Cicero v/kent Gottschalk Hansen. 4.Erfaringsudveksling

Læs mere

Bootstrap Tutorial LAV EN SIMPEL RESPONSIVE SIDE MED BOOTSTRAP MATHIAS HERSKIND GROTRIAN

Bootstrap Tutorial LAV EN SIMPEL RESPONSIVE SIDE MED BOOTSTRAP MATHIAS HERSKIND GROTRIAN 2015 Bootstrap Tutorial LAV EN SIMPEL RESPONSIVE SIDE MED BOOTSTRAP MATHIAS HERSKIND GROTRIAN I denne tutorial kommer du til at I denne tutorial vil du lære hvad Bootstrap er, hvordan det fungerer og hvordan

Læs mere

Tastevejledning Windows XP

Tastevejledning Windows XP Tastevejledning Windows XP Tastevejledningen dækker den danske udgave af Windows XP. Der er taget udgangspunkt i en standard installation, hvor der ikke er foretaget tilpasninger i skærmopsætning, valg

Læs mere

Birgitte Bremholm Persson MG21 svendeprøve 2015 MEDIEGRAFIKERSVENDEPRØVE

Birgitte Bremholm Persson MG21 svendeprøve 2015 MEDIEGRAFIKERSVENDEPRØVE Birgitte Bremholm Persson MG21 svendeprøve 2015 MEDIEGRAFIKERSVENDEPRØVE Grafisk produktion og workflow Grafisk produktion og workflow l 12 Pedersholmparken 6 DK 3600 Frederikssund Tlf.: +45 27 57 7164

Læs mere

Byggebasen Javascript

Byggebasen Javascript EG Data Inform Byggebasen Javascript Implementering af ansvarsperioder og produktdata på eget site Jens Karsø 2013 Indhold Byggebasen javascript-plugin til DB12-site... 2 DB12-site kommunikationsmodel...

Læs mere

Kom godt i gang. Sitecore Foundry maj Version 1.1

Kom godt i gang. Sitecore Foundry maj Version 1.1 Sitecore Foundry 4 Kom godt i gang 26. maj 2014 - Version 1.1 Pentia A/S Store Kongensgade 66, Baghuset 1264 København K Telefon: 7023 3330 E-mail: info@foreningssite.dk Indholdsfortegnelse Indledning...

Læs mere