Kompatibilitetstilstand - Compatibility mode
En kompatibilitetstilstand er en softwaremekanisme, hvor en software enten efterligner en ældre version af software eller efterligner et andet operativsystem for at tillade ældre eller inkompatibel software eller filer at forblive kompatible med computerens nyere hardware eller software. Eksempler på software, der bruger tilstanden, er operativsystemer og Internet Explorer .
Operativsystemer
En kompatibilitetstilstand i et operativsystem er en softwaremekanisme, hvor en computers operativsystem emulerer en ældre processor , operativsystem og/eller hardwareplatform for at tillade ældre software at forblive kompatibel med computerens nyere hardware eller software.
Dette adskiller sig fra en fuldgyldig emulator ved, at en emulator typisk skaber en virtuel hardwarearkitektur på værtsystemet, frem for blot at oversætte det ældre systems funktionsopkald til opkald, som værtsystemet kan forstå.
Eksempler omfatter klassisk tilstand i Mac OS X og kompatibilitetstilstand i Microsoft Windows , som begge tillader programmer, der er designet til ældre versioner af operativsystemet, at køre. Andre eksempler omfatter Wine til at køre Windows-programmer på Linux / OS X og Mono til at køre .NET- programmer på forskellige Unix-lignende systemer.
Internet Explorer
"Kompatibilitetsvisning" er en kompatibilitetsfunktion i webbrowseren Internet Explorer i version 8 og nyere. Når den er aktiv, tvinger kompatibilitetsvisning IE til at vise websiden i quirks -tilstand, som om siden blev set i IE7. Når kompatibilitetsvisning ikke er aktiveret, siges IE at køre i native mode. I IE11 kan en bruger aktivere kompatibilitetstilstand for et websted ved at klikke på ikonet Gears og klikke på Indstillinger for kompatibilitetsvisning.
IE8+
Internet Explorer 8 blev fremmet af Microsoft for at have en strengere overholdelse af W3C beskrevne webstandarder end Internet Explorer 7 . Som et resultat, som i alle tidligere IE -versioner, ville en procentdel af websider, der er kodet til de ældre versioners adfærd, bryde i IE8. Dette ville have været en gentagelse af situationen med IE7, som, selvom der var rettet fejl fra IE6, brød sider, der brugte de IE6-specifikke hacks til at omgå dens manglende overholdelse. Dette var især et problem for offline HTML-dokumenter, som muligvis ikke kan opdateres (f.eks. Gemt på et skrivebeskyttet medium, f.eks. En cd-rom eller dvd-rom).
For at undgå denne situation implementerede IE8 en form for versionsmålretning, hvorved en side kunne redigeres til en bestemt version af en browser ved hjælp af X-UA-Compatibleerklæringen enten som et meta -element eller i HTTP -overskrifterne.
For at opretholde bagudkompatibilitet kan websteder vælge IE7-lignende håndtering af indhold ved at indsætte et specielt oprettet meta-element i websiden, der udløser kompatibilitetstilstand i browseren ved hjælp af:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
En nyere version af browseren, end siden var kodet til, ville efterligne den ældre versions adfærd, så de antagelser, siden gjorde om browserens adfærd, holder stik.
Microsoft foreslog, at en side med en doctype, der udløser standardtilstand (eller næsten standardtilstand) i IE7, som standard ville udløse IE7-lignende adfærd, kaldet "standardtilstand" (nu kaldet "streng tilstand") i IE8 og fremtidige versioner af IE. De nye funktioner i IE8 er aktiveret til at udløse, hvad Microsoft kaldte "IE8 standardtilstand" (nu kaldet "standardtilstand"). Doktyper, der udløser quirks -tilstand i IE7, vil fortsat gøre det i IE8.
Peter Bright fra Ars Technica hævdede, at ideen om at bruge et metatag til at vælge en bestemt gengivelsestilstand grundlæggende savner pointen med standardbaseret udvikling, men positionerede spørgsmålet som et idealisme versus pragmatisme i webudvikling og bemærkede, at ikke alle på Internettet fastholdes, og at "at kræve, at webudviklere opdaterer websteder for at sikre, at de fortsat fungerer korrekt i enhver fremtidig browserversion, sandsynligvis er for meget at kræve."
Resultatet for IE 8 Beta 1 var, at det kunne gengive tre tilstande: "Quirks", "Strict" og "Standard". Når der er en gammel DOCTYPE, eller når der ikke er nogen DOCTYPE, gengiver IE det som IE5 ville (quirks mode). Når et særligt meta -element eller dets tilsvarende HTTP -header er inkluderet på en webside, gengiver IE8 denne side som IE7 ville (streng tilstand). Ellers gengiver IE8 sider med sin egen motor (standardtilstand). Brugere kan skifte mellem de tre tilstande med et par klik. Udgivelsen af Internet Explorer 8 Beta 1 afslørede, at mange websteder ikke fungerer i denne nye standardtilstand.
Microsoft fører en liste over websteder, der er rapporteret at have problemer i IE8's standardtilstand, kendt som listen over kompatibilitetsvisning. Når en bruger aktiverer denne liste, gengiver IE8 webstederne på listen ved hjælp af dens kompatibilitetsvisningstilstand. Listen opdateres lejlighedsvis for at tilføje nyligt rapporterede problematiske websteder samt for at fjerne websteder, hvis ejere har anmodet om fjernelse. Internet Explorer -teamet tester også websites på listen for kompatibilitetsproblemer og fjerner dem, hvor der ikke findes nogen.
Se også
- Windows XP -tilstand
- Ældre tilstand
- Bagudkompatibilitet
- Quirks -tilstand
- Programinformationsfil (PIF)