Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 15529|Svar: 1

[Bootstrap] En lösning för att få IE6 IE7 IE8 IE9 IE10 IE11 att stödja Bootstrap

[Kopiera länk]
Publicerad på 2016-08-03 22:55:23 | | |

Om det finns en likhet är jag hedrad, om det återpubliceras, vänligen ange
En lösning för att få IE6 IE7 IE8 IE9 IE10 IE11 att stödja Bootstrap

Jag har nyligen gjort en webbplats. Jag har alltid tyckt att bootstrap är väldigt bra. Den här gången använde jag bootstrap3, Chrome, Firefox, Safari, Opera, 360-webbläsaren (hastighetsläge), Sogou-webbläsaren och andra webbläsare utan problem. Under IE8 och IE11 upptäckte jag att stilen inte kunde visas. Sedan kom olika Baidu. Till slut löste Yapeng.com ett inlägg från nätanvändaren problemet. Se även Qianxun Learning Network Lösningen sammanfattas enligt följande:


Först, se till att din HTML-sida börjar med en DOCTYPE-deklaration. DOCTYPE talar om för webbläsaren vilken HTML- eller XHTML-specifikation som ska användas för att tolka ett HTML-dokument, vilket påverkar följande faktorer:
Begränsningar på taggar, attribut och egenskaper
Påverkar webbläsarens renderingsläge, och olika renderingslägen påverkar webbläsarens tolkning av CSS-kod och till och med JavaScript Javascrip{filter}t
DOCTYPE är avgörande, och nuvarande bästa praxis är att skriva på första raden i HTML-dokumentet:
<!DOCTYPE html>


Det finns flera anledningar till att hitta bootstrap sammanfattade i gudens inlägg, för det första utvecklades Bootstrap3 på principen om mobil enhet först, så orsakerna kan vara följande:
1. Den fjärranslutna adressen anropas inte korrekt
Det vill säga, så länge det är IE9 eller lägre, kalla två speciella js
<!-- HTML5 Shim och Respond.js IE8-stöd för HTML5-element och mediefrågor -->
<!--[om lt IE 9]>
  <scrip{filter}t src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></scrip{filter}t>
  <scrip{filter}t src="http://apps.bdimg.com/libs/respond.js/1.4.2/respond.min.js"></scrip{filter}t>
<![endif]-->
Men jag testade och upptäckte att det inte är möjligt att bara använda ovanstående js-filer,
2. Anropsmetoden är felaktig
Referera inte till respond.min.js-, respond.js- eller CSS-filer i file:// eller @import form


3. Identifiera webbläsarens innehåll (använda metataggar för att justera webbläsarens renderingsmetod)
Bootstrapen stöder inte IE-kompatibilitetsläget, och för att IE ska kunna köra det senaste renderingsläget kommer följande taggar att läggas till på sidan

IE=edge betyder att den senaste IE-kärnan tvingas, och chrome=1 betyder att om webbläsarpluginet Google Chrome Frame för IE6/7/8 och andra versioner installeras (vilket kan få användarens webbläsare att se fortfarande ut som IE:s meny och gränssnitt, men användaren använder faktiskt Chrome-webbläsarkärnan när hen surfar på webben), så används Chrome-kärnan för att rendera. För en specifik förklaring av denna metatagg, se det utmärkta svaret på StackOverflow, och den <meta>engelska förklaringen av taggexperten finns här
http://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge-e
Jag lade till
<meta http-equiv="X-UA-Compatible" content="IE=9" />
Och där har du det
Kärnan styr metataggen, eftersom de nuvarande vanliga webbläsarna i Kina är dubbla kärnor, så metataggen läggs till för att tala om för webbläsaren vilken kärna som ska användas för att rendera sidan


4. IE8 stöder inte flera egenskaper hos containrar
IE8 stöder inte fullt ut boxstorlek: border-box används med min-width, max-width, min-height eller max-height. Därför använder containerklassen i bootstrap v3.0.1 inte längre max-width.


5.JS problem orsakat av ordningen i vilken CSS introduceras
Du måste ange CSS innan du refererar till JS
<länk rel="stilmall" typ="text/css" href="bootstrap.min.css" media="skärm"/>
<scrip{filter}t type="text/javascrip{filter}t" src="js/respond.min.js"></scrip{filter}t>


6. DOCTYPE har tomma rader före och efter
<!DOCTYPE html>
Det är inte okej att ha mellanrum här, du måste ta bort mellanrum
<html>


7. Du kan också modifiera bootstrap.css manuellt
Om du använder bootstrap 2.1.1 kan modifiering av navbar-inner{ filter:none} lösa problemet, om du använder version 3.0+ finns det ingen kod, se anslutningen för detaljer
http://stackoverflow.com/questions/12460190/bootstrap-navbar-does-not-show-in-ie8


8. Använd quirks-läget
När man definierar en webbsida är det läge som är bakåtkompatibelt med äldre webbläsare quirks-läget, och motsvarande "standardläge" är standardläge. Specifikt skrivs <!DOCTYPE html> som tidigare
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Jag testade detta, men det är inte genomförbart


Till slut testade jag under IE11, men testade under IE8 och hittade ett problem där platshållaren inte stöds
Så här löser du IE:s stöd för platshållare
Jquery som refereras i denna artikel testas i 1.11.1, och jquery refereras först
<scrip{filter}t type="text/javascrip{filter}t" src="http://code.jquery.com/jquery-1.11.1.min.js"></scrip{filter}t>
Du kan också använda andra jquery-versioner
Introducera sedan <scrip{filter}t type="text/javascrip{filter}t" src="js/jquery.placeholder.js"></scrip{filter}t>
jquery.placeholder.js nedladdningsadress för denna fil https://github.com/mathiasbynens/jquery-placeholder
Lägg sedan till lite kod i filen
<scrip{filter}t type="text/javascrip{filter}t">
    $(funktion () {
        Anropa pluginet
        $('input, textarea').placeholder();
    });
</scrip{filter}t>
Om jag är inblandad här eller om problemet fortfarande är olöst, vänligen http://hustlzp.com/post/2014/01/ie8-compatibility fler detaljer


Ovanstående IE6, 7, 8, 9, 10, 11, chrome, Firefox, Safari, Opera, 360-webbläsare (hastighetsläge), Sogou-webbläsartestet klarades, endast IE5.5 verkar inte genomförbart, kort sagt, problemet är löst här, allt ondskefullt IE6 – kalla det sojasås


Om du inte vill använda jquery.placeholder.js kan du inte längre stödja platshållaremuleringsimplementationer under webbläsare
Du kan läsa den här artikeln för en mycket detaljerad http://ju.outofmemory.cn/entry/1595




Föregående:Winform laddar ner fjärrbilden och visar den
Nästa:Vissa undantag i Nhibernate under mono-argument kan inte vara ogiltiga
 Hyresvärd| Publicerad på 2016-08-03 23:05:15 |
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com