Kompatible HTML-sider

Hvordan skal man orientere sig i den hurtigt skiftende web-verden? PC World Online giver her et par råd til den forvirrede webdesigner.

Hvorfor kompatibilitet

Man skal holde tungen lige i munden, når man udformer websider. Der er mange valg at foretage, mange forskellige standarder og browsere, og ikke mindst kundeønsker, om det nu er de interne eller eksterne af slagsen.

Med de mange muligheder, kan tingene undertiden blive lidt spegede. Hvis man for eksempel benytter de indbyggede JavaScript-muligheder i Macromedias Dreamweaver, kan man komme ud for, at effekterne ikke virker i Netscape 6 eller Opera.

Nogle udviklere har den holdning, at blot websiden fungerer i Internet Explorer 4 eller senere, så er den hellige grav vel forvaret. Det er dog et meget enøjet perspektiv. Der er flere problemer ved denne strategi:

Tabte kunder
Denne holdning argumenteres ofte udfra henvisning til analyse af logfiler, der kan vise, at brugere af Internet Explorer dækker langt størstedelen af brugerne. Men det er jo heller ikke så mystisk, hvis brugere af andre browsere og platforme oplever webstedet i en amputeret form. En af de vigtigste ting, designere og udviklere skal huske er, at brugere, der oplever, at webstedet ikke virker, ikke vender tilbage, hvilket i sidste ende kan betyde en tabt kunde.

Nye medier
Det næste problem er, at der er en fare for at miste fleksibilitet. Ved at udvikle systemer, der er skræddersyet til proprietær teknologi, vil det blive sværere at omstille applikationerne, når standarderne ændrer sig. Med nye medier som web-tv og håndholdte enheder, er det vigtigt at udvikleren er beredt på fleksibilitet og ikke lader sig forføre af proprietære teknologier.

En af årsagerne til forkærligheden for Internet Explorer blandt nogle udviklere og designere er, at det er teknologisk set den mest avancerede browser, der findes, og det er der selvfølgelig ingen grund til at rynke på næsen over. Der er også mange ting - specielt implementeringen af XML, XSLT og CSS, der giver mulighed for at bygge avancerede klientgrænseflader. Men det er som sagt vigtigt at holde sig for øje, hvornår man benytter proprietær teknologi, og hvornår man følger standarderne.

Til sidst skal man huske på, at alle undersøgelser viser, at stort set alle brugere er indifferente i forhold til et websteds grad af "lækkerhed." I alle brugerundersøgelser kommer funktionalitet, navigerbarhed og opdateringsfrekvens ind på førstepladserne over, hvad brugerne vurderer som væsentligt, mens design og layout er placeret et godt stykke længere nede på hitlisten.

Løsninger

Løsningerne
Hvis man ikke kan klare sig uden dynamisk HTML, ActiveX og plug-ins til diverse esoteriske formater, er der ingen vej uden om: Man må bygge to versioner af webstedet. En version i HTML3.2 og en version for de avancerede brugere.

Uanset om man bygger dynamiske websteder eller statiske sider, behøver det ikke at betyde et stort stykke ekstra arbejde, men det kræver, at man strukturerer sit arbejde.

Kompatibilitet på det dynamisk websted
Lad os først se på dynamiske websteder. Her tilbyder de fleste scripting-miljøer en mulighed for at fortælle udvikleren, hvilke egenskaber browseren har.

En browser (eller anden type af HTTP-brugeragent) fortæller gerne serveren, hvem den er. Det kan webserveren benytte til at finde ud af, hvilke egenskaber og funktioner, browseren understøtter. Prøv for eksempel at klikke på linket her og se, hvad der kan siges om din browser.

I Microsofts' ASP-miljø kan man benytte objektet MSWC.BrowserType


Set BrowserType = Server.CreateObject("MSWC.BrowserType")

if (BrowserType.frames = TRUE)
   ' Frames-kompatible browsere får denne kode
else
   ' Browsere, der ikke kan vise frames får denne kode.

Der er mere information om MSWC.BrowserType-objektet i Microsofts dokumentation.

PHP, et andet populært scripting-sprog, har objektet get_browser(), der opfylder samme formål. Dokumentationen kan findes her.

Statiske sider

Som tidligere nævnt er det vigtigt at strukturere sit indhold. Selv på de mest intensive DHTML-websteder, er langt størstedelen af indholdet HTML3.2. Hvis for eksempel navigationen er opbygget som en dynamisk drop-down-menu, skal der ikke meget ekstra kode til at bygge en navigation med almindelige links. Her kan man også overveje størrelsen af publikum på de forskellige browsere. Man kan så nedsætte design indsatsen i versionerne for ældre browsere. De fleste brugere er også primært interesseret i funktionalitet, og ikke design.

Statiske websider
I statiske websider kan man benytte JavaScript-omstilling. JavaScript-objekterne appCodeName, appVersion, AppName og userAgent indeholder information om browseren, og så kan udvikleren for eksempel omstille (redirecte) brugere til relevante sider. Web-værktøjer som Macromedia Dreamweaver og Adobe GoLive har disse muligheder indbygget. Hvis man hellere vil kode det i hånden, har Builder.com et lille værktøj, der demonstrerer objekterne.

En ting er at detektere browseren, en anden er at udvikle forskellige versioner. Her kan for eksempel Dreamweavers Library-funktion gøre det nemt at udvikle sider, hvor enkelte dele varieres. Vi har i en tidligere artikel gennemgået denne funktion, der også findes i de fleste andre professionelle web-værktøjer.

AL Sydbank A/S (tidligere Arbejdernes Landsbank)

Tech Lead til Datacenter Operations

Københavnsområdet

Red Barnet

IT Infrastructure Architect

Københavnsområdet

Netcompany A/S

Test Consultant

Midtjylland

Navnenyt fra it-Danmark

Immeo har pr. 1. marts 2026 ansat Theo Lyngaa Hansen som Consultant. Han kommer fra en stilling som Data Manager hos IDA. Han er uddannet i Business Administration & Data Science. Nyt job
Jakob Dirksen, SVP, Nordic Customer Delivery & Operations hos GlobalConnect, er pr. 1. maj 2026 forfremmet til EVP, Infrastructure Delivery & Operations. Han skal fremover især beskæftige sig med at lede Infrastructure Delivery & Operations, der har til opgave at drive og udvikle fibernetværket på tværs af virksomheden. Forfremmelse

Jakob Dirksen

GlobalConnect

Renewtech ApS har pr. 1. april 2026 ansat Boris Sudar som Senior IT Specialist. Han skal især beskæftige sig med at sikre, at Renewtech cloudbaseret infrastruktur fortsætter på sit højeste niveau, mens han også skal drive system udvikling. Han kommer fra en stilling som Senior IT Specialist hos Eurowind Energy. Han har tidligere beskæftiget sig med Microsoft 365, Intune og sikker endepunktsstyring for hybrid og cloudbaseret infrastrukturer. Nyt job

Boris Sudar

Renewtech ApS

Pentos har pr. 2. juni 2025 ansat Jonas Kyhnau som Seniorkonsulent. Han skal især beskæftige sig med at rådgive virksomheder om HR digitalisering og implementering af SAP SuccessFactors og SmartRecruiters. Han kommer fra en stilling som Seniorkonsulent og PMO lead hos Gavdi. Han er uddannet Cand.merc Human Resource Management fra Copenhagen Business School. Han har tidligere beskæftiget sig med med Onboarding, Employee Central (Core HR). Nyt job

Jonas Kyhnau

Pentos