Hvis det er en likhet, er jeg beæret, hvis det trykkes på nytt, vennligst oppgi det Løsning for å få IE6 IE7 IE8 IE9 IE10 IE11 til å støtte Bootstrap
Nylig laget jeg et nettsted. Jeg har alltid følt at bootstrap er veldig bra. Denne gangen brukte jeg bootstrap3, Chrome, Firefox, Safari, Opera, 360-nettleseren (hastighetsmodus), Sogou-nettleseren og andre nettlesere uten problemer. Under IE8 og IE11 fant jeg ut at stilen ikke kunne vises. Deretter ble ulike Baidu funnet ut. Til slutt løste Yapeng.com et nettbrukerinnlegg problemet. Se også Qianxun Learning Network Løsningen oppsummeres som følger:
Først, sørg for at HTML-siden din starter med en DOCTYPE-deklarasjon. DOCTYPE forteller nettleseren hvilken HTML- eller XHTML-spesifikasjon som skal brukes for å tolke et HTML-dokument, noe som påvirker følgende faktorer: Begrensninger på tagger, attributter og egenskaper Påvirker nettleserens renderingsmodus, og ulike renderingsmoduser påvirker nettleserens parsing av CSS-kode og til og med Javascrip{filter}t-skript DOCTYPE er avgjørende, og dagens beste praksis er å skrive på første linje i HTML-dokumentet: <!DOCTYPE html>
Det finnes flere grunner til å finne bootstrap oppsummert i innlegget om guden, først og fremst ble Bootstrap3 utviklet på prinsippet om mobile enheter først, så grunnene kan være som følger: 1. Den eksterne adressen blir ikke kalt korrekt Det vil si, så lenge det er IE9 eller lavere, kall to spesielle j-er <!-- HTML5 Shim og Respond.js IE8-støtte for HTML5-elementer og mediespørringer --> <!--[hvis 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 jeg testet og fant ut at det ikke er mulig å bare bruke de ovennevnte js-filene, 2. Kallemetoden er feil Ikke referer til respond.min.js, respond.js eller CSS-filer i file:// eller @import form
3. Identifisere innholdet i nettleseren (ved å bruke metatagger for å justere nettleserens gjengivelsesmetode) Bootstrap-en støtter ikke IE-kompatibilitetsmodus, og for at IE skal kunne kjøre den nyeste renderingsmodusen, vil følgende tagger bli lagt til på siden
IE=edge betyr at den nyeste IE-kjernen er tvunget, og chrome=1 betyr at hvis nettleserpluginen Google Chrome Frame for IE6/7/8 og andre versjoner installeres (noe som kan få brukerens nettleser til å se fortsatt ut som IEs meny og grensesnitt, men brukeren faktisk bruker Chrome-nettleserkjernen når de surfer på nettet), så brukes Chrome-kjernen til å gjengi dem. For en spesifikk forklaring av denne metataggen, se det flotte svaret på StackOverflow, og den <meta>engelske forklaringen av tag-eksperten finnes her
http://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge-e la jeg til <meta http-equiv="X-UA-Compatible" content="IE=9" /> Og der har du det Kjernen kontrollerer metataggen, fordi de nåværende vanlige nettleserne i Kina er doble kjerner, så metataggen legges til for å fortelle nettleseren hvilken kjerne som skal brukes for å gjengi siden
4. IE8 støtter ikke flere egenskaper ved containere IE8 støtter ikke fullt ut box-størrelse: border-box brukes med min-width, max-width, min-height eller max-height. Derfor bruker ikke container-klassen i bootstrap v3.0.1 lenger max-width.
5.JS problemet forårsaket av rekkefølgen CSS introduseres i Du må sitere CSS før du refererer til JS <link rel="stylesheet" type="text/css" href="bootstrap.min.css" media="screen"/> <scrip{filter}t type="text/javascrip{filter}t" src="js/respond.min.js"></scrip{filter}t>
6. DOCTYPE har blanke linjer før og etter <!DOCTYPE html> Det er ikke greit å ha mellomrom her, du må fjerne mellomrommene <html>
7. Du kan også endre bootstrap.css manuelt Hvis du bruker bootstrap 2.1.1, kan modifisering av navbar-inner{ filter:none} løse problemet, hvis du bruker versjon 3.0+ finnes det ingen kode, se tilkoblingen for detaljer
http://stackoverflow.com/questions/12460190/bootstrap-navbar-does-not-show-in-ie8
8. Bruk quirks-modus Når man definerer en nettside, er modusen som er bakoverkompatibel med eldre nettlesere quirks-modus, og den tilsvarende "standardmodusen" er standardmodus. Spesifikt skrives <!DOCTYPE html> som før <!DOCTYPE HTML OFFENTLIG "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> Jeg testet dette, men det er ikke gjennomførbart
Til slutt testet jeg under IE11, men testet under IE8 og fant et problem med at plassholderen ikke støttes Slik løser du IEs støtte for plassholdere Jquery som refereres til i denne artikkelen testes i 1.11.1, og jquery refereres 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 også bruke andre jquery-versjoner Deretter introduserer du <scrip{filter}t type="text/javascrip{filter}t" src="js/jquery.placeholder.js"></scrip{filter}t> jquery.placeholder.js nedlastingsadressen for denne filen https://github.com/mathiasbynens/jquery-placeholder Legg så til litt kode i filen <scrip{filter}t type="text/javascrip{filter}t"> $(funksjon () { Start pluginen $('input, tekstområde').placeholder(); }); </scrip{filter}t> Hvis jeg er involvert her, eller hvis problemet fortsatt ikke er løst, vennligst http://hustlzp.com/post/2014/01/ie8-compatibility flere detaljer
De ovennevnte IE6, 7, 8, 9, 10, 11, chrome, firefox, safari, opera, 360-nettleser (hastighetsmodus), Sogou-nettlesertesten bestod, bare IE5.5 virker ikke gjennomførbart, kort sagt, problemet er løst her, alt ondt IE6 – kall det soyasaus
Hvis du ikke vil bruke jquery.placeholder.js, kan du ikke lenger støtte implementasjoner av plassholderemulering i nettlesere Du kan lese denne artikkelen for en veldig detaljert http://ju.outofmemory.cn/entry/1595 |