UTVIKLING

WebKit overtar rollen til IE6

Utviklere lager mobilnettsteder som bare fungerer i de dominerende nettleserne.

14. feb. 2012 - 07:42

Bortsett fra de Windows-baserte smartmobilene, leveres så godt som alle smartmobiler og nettbrett med en nettleser basert på åpen kildekode-baserte WebKit. Dette inkluderer både Apples Safari, Google Chrome og standardnettleserne i systemer som Android, Bada og Symbian. Nå er denne dominansen i ferd med å bli et problem.

Daniel Glazman er viseformann i W3Cs CSS Working Group. I et blogginnlegg skriver han at en rekke av medlemmene i gruppen – blant annet Adobe, Apple, Google, HP, Microsoft, Mozilla, Opera Software og W3C selv – nå advarer mot en situasjon som kan minne om den som oppstod da Internet Explorer 6 var ekstremt dominerende, nemlig at webutviklere bare tilpasser sidene sine til den mest utbredte teknologien og ignonerer de øvrige nettleserne.

Glazman eier selv selskapet Disruptive Innovations, som også er medlem av CSS-arbeidsgruppen.

Nettleserfiltrering

Det finnes mobilutgaver av både Opera, Firefox og Internet Explorer og ingen av disse er basert på WebKit. Ifølge Glazman er det nå en tendens til at utviklere av mobilwebsider legger inn en sjekk om nettleseren som benyttes er basert på WebKit, og gir brukerne av andre nettlesere beskjed om at deres nettleser ikke støttes. Dette er en kjent metode fra IE6 sine glansdager. I de senere år har de fleste gått vekk fra dette og tatt i bruk prinsippet om «graceful degradation».

Men ifølge Glazman og CSS-gruppen er det ikke bare denne nettlesersniffingen som skaper problemer for mobilnettlesere som ikke er basert på WebKit.

Prefiksing

Alle de nevnte nettleserne støtter bruken av prefikser i forbindelse med eksperimentelle CSS-regler, altså CSS-funksjonalitet som ennå ikke er ferdig standardisert og/eller stabilt implementert. Forstavelser som «-webkit-*», «-moz-*», «-ms-*» og «-o-*» forteller de enkelte nettleserne at de skal ta hensyn til regler med «sin» prefiks, men ignorere de øvrige.

Problemet, ifølge Glazman, er at mange utviklere av mobilnettsteder bare bruker prefikset til WebKit, mens de øvrige utelates – selv om nettleserne støtter funksjonen. Utviklerne fjerner heller ikke prefikset når støtten er god nok på tvers av nettleserne til at det ikke lenger er nødvendig med nettleserspesifikke regler. Dette innebærer at websidene vil fungere godt i WebKit-baserte nettlesere, mens de ser mindre bra ut i andre nettlesere.

I de fleste tilfeller er det svært lite som skal til for at de eksperimentelle CSS-reglene også skal kunne brukes av andre nettlesere. Ofte handler det bare om å lage et par ekstra kopier av regelen hvor WebKit-prefikset er skiftet ut med prefikset til de andre nettleserleverandørene.

Desperasjon

Det som nå står i fare for å skje, er at de øvrige nettleserne også får støtte webkit-prefikset, selv om de ikke er basert på WebKit. Dette er en desperat løsning som kan skape et visst kaos og ødelegge for standardiseringsprosessen, men i så fall har mange av utviklerne seg selv å takke.

– La meg være veldig tydelig: dette er ikke hypotetisk og jeg diskuterer ikke her noe som kan skje. Alle nettleserleverandørene har offisielt latt oss få vite at dette vil skje, og heller før enn senere fordi de, jeg siterer, «ikke har noe annet valg». La meg også veldig tydelig si at dette ikke skyldes mangel på innovasjon hos disse nettleserleverandørene, spesielt nå de faktisk støtter en egenskap, men med sin egen prefiks, og dermed følger arbeidsgruppens regler, skriver Glazman.

Han oppfordrer på egne vegne alle webutviklere til å begynne å utvikle for en åpen web igjen, og at alle andre legger press på nettsteder som ikke gjør dette, blant annet ved å unnlate å lenke til slike sider.

Glazman påpeker også at WebKit støtter CSS-lignende regler som Apple står bak, og som aldri har blitt foreslått standardisert. I dette blogginnlegg, hvor han svarer på kritikk mot sitt første innlegg, lister han flere eksempler på slike regler.

    Les også:

Les mer om:
Del
Kommentarer:
Du kan kommentere under fullt navn eller med kallenavn. Bruk BankID for automatisk oppretting av brukerkonto.