Kui on sarnasusi, olen au sees, kui see trükitakse uuesti, palun märgi Lahendus, kuidas teha IE6, IE7, IE8, IE9, IE10, IE11 toetav Bootstrap
Hiljuti tegin veebilehe, olen alati tundnud, et bootstrap on väga hea. Seekord kasutasin bootstrap3, Chrome, Firefox, Safari, Opera, 360 brauserit (kiirusrežiim), Sogou brauserit ja teistel brauseritel polnud probleeme, ning IE8 ja IE11 puhul avastasid, et stiili ei saanud kuvada. Seejärel mitmed Baidu. Lõpuks lahendasid Yapeng.com netipostituse abil probleemi. Vaata ka Qianxun Learning Networki. Lahendus on kokku võetud järgmiselt:
Esiteks veendu, et sinu HTML-leht algaks DOCTYPE deklaratsiooniga. DOCTYPE ütleb brauserile, millist HTML- või XHTML-spetsifikatsiooni kasutada HTML-dokumendi parsimiseks, mis mõjutab järgmisi tegureid: Piirangud siltidele, atribuutidele ja omadustele Mõjutab brauseri renderdusrežiimi ning erinevad renderdusrežiimid mõjutavad brauseri CSS-koodi ja isegi Javascrip{filter}t skriptide parsimist. DOCTYPE on kriitiline ning praegune parim tava on tippida HTML-dokumendi esimesele reale: <!DOCTYPE html>
Bootstrapi leidmiseks on mitu põhjust, mis on kokku võetud jumala postituses, esiteks arendati Bootstrap3 mobiilseadme põhimõttel, seega võivad põhjused olla järgmised: 1. Kaugaadressi ei kutsuta õigesti See tähendab, et kui see on IE9 või madalam, kutsu kaks erilist j-d <!-- HTML5 Shim ja Respond.js IE8 tugi HTML5 elementidele ja meediapäringutele --> <!--[kui leitnant 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]--> Aga testisin ja leidsin, et ainult ülaltoodud js-failide kasutamine pole teostatav, 2. Kutsumismeetod on vale Ära viita respond.min.js, respond.js ega CSS-failidele file:// ega @import kujul
3. Brauseri sisu tuvastamine (meta-siltide kasutamine brauseri renderdamismeetodi kohandamiseks) Bootstrap ei toeta IE ühilduvusrežiimi ning selleks, et IE saaks käivitada uusima renderdusrežiimi, lisatakse lehele järgmised sildid
IE=edge tähendab, et viimane IE tuum on sunnitud ja chrome=1 tähendab, et kui brauseri plugin Google Chrome Frame IE6/7/8 ja teiste versioonide jaoks on paigaldatud (mis võib panna kasutaja brauseri nägema endiselt IE menüü ja liidesena, kuid kasutaja kasutab tegelikult Chrome'i brauseri tuuma veebisirvimisel), siis kasutatakse Chrome'i tuuma renderdamiseks. Selle meta-sildi konkreetse selgituse leiate suurepärasest vastusest StackOverflow's ning <meta>ingliskeelse seletuse sildieksperdi kohta leiate siit
http://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge-e Lisasin <meta http-equiv="X-UA-Compatible" content="IE=9" /> Ja siis ongi siin Tuum kontrollib meta-silti, sest praegused Hiina peavoolu brauserid on topeltkernelitega, seega lisatakse meta-silt, et öelda, millist kernelit kasutada lehe renderdamiseks
4. IE8 ei toeta mitmeid konteinerite omadusi IE8 ei toeta täielikult kasti suuruse määramist: ääriskasti kasutatakse min-width, max-width, min-height või max-height'iga. Seetõttu ei kasuta bootstrap v3.0.1 konteineriklass enam max-width'i.
5.JS probleem, mis tuleneb CSS-i kasutuselevõtu järjekorrast Enne js-i viitamist pead tsitaadile CSS-i tsiteerima <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-il on tühjad read enne ja pärast <!DOCTYPE html> Siin ei ole lubatud tühikuid jätta, need tuleb eemaldada <html>
7. Saad bootstrap.css ka käsitsi muuta Kui kasutad bootstrap 2.1.1, võib navbar-inner{ filter:none} muutmine probleemi lahendada, kui kasutad versiooni 3.0+, koodi pole, vaata ühendust detailide jaoks
http://stackoverflow.com/questions/12460190/bootstrap-navbar-does-not-show-in-ie8
8. Kasuta erivõimete režiimi Veebilehe määratlemisel on vanemate brauseritega tagurpidi ühilduv režiim quirks mode ning vastav "standardrežiim" on standardrežiim. Täpsemalt on <!DOCTYPE html> kirjutatud nagu varem <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> Ma testisin seda, aga see pole teostatav
Lõpuks testisin IE11 all, kuid IE8 all ja leidsin probleemi, et ajutäite ei ole toetatud Siin on, kuidas lahendada IE tugi ajutiste jaoks Selles artiklis viidatud jquery testitakse versioonis 1.11.1 ja jquery viidatakse esimesena <scrip{filter}t type="text/javascrip{filter}t" src="http://code.jquery.com/jquery-1.11.1.min.js"></scrip{filter}t> Võid kasutada ka teisi jquery versioone Seejärel tutvustame <scrip{filter}t type="text/javascrip{filter}t" src="js/jquery.placeholder.js"></scrip{filter}t> jquery.placeholder.js selle faili allalaadimisaadress https://github.com/mathiasbynens/jquery-placeholder Seejärel lisa failile koodi <scrip{filter}t type="text/javascrip{filter}t"> $(funktsioon () { Käivita plugin $('input, textarea').placeholder(); }); </scrip{filter}t> Kui ma olen siin seotud või probleem on endiselt lahendamata, palun liigu http://hustlzp.com/post/2014/01/ie8-compatibility rohkem detaile
Ülalmainitud IE6, 7, 8, 9, 10, 11, chrome, firefox, safari, opera, 360 brauser (kiirusrežiim), Sogou brauseri test läbitud, ainult IE5.5 tundub olevat teostamatu, lühidalt öeldes on probleem siin lahendatud, kõik kuri IE6 – nimetage seda sojakastmeks
Kui sa ei taha jquery.placeholder.js kasutada, ei saa sa enam brauserite all toetada ajutine emulatsiooni rakendusi Selle artikli põhjal saate vaadata väga detailset http://ju.outofmemory.cn/entry/1595 |