Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 15529|Απάντηση: 1

[Bootstrap] Λύση για να κάνετε τους IE6 IE7 IE8 IE9 IE10 IE11 να υποστηρίζουν το Bootstrap

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 3/8/2016 10:55:23 μ.μ. | | |

Αν υπάρχει ομοιότητα, με τιμά, αν ανατυπωθεί, παρακαλώ να το αναφέρετε
Λύση για να κάνετε τους IE6 IE7 IE8 IE9 IE10 IE11 να υποστηρίζουν το Bootstrap

Πρόσφατα έφτιαξα έναν ιστότοπο, πάντα ένιωθα ότι το bootstrap είναι πολύ καλό, Αυτή τη φορά χρησιμοποίησα bootstrap3, Chrome, Firefox, Safari, Opera, 360 πρόγραμμα περιήγησης (λειτουργία ταχύτητας), το πρόγραμμα περιήγησης Sogou και άλλα προγράμματα περιήγησης δεν έχουν προβλήματα, και κάτω από IE8 και IE11 διαπίστωσαν ότι το στυλ δεν μπορούσε να εμφανιστεί, Στη συνέχεια, διάφορα Baidu, Τέλος, με τη βοήθεια μιας ανάρτησης χρήστη στο Yapeng.com έλυσε το πρόβλημα, Ανατρέξτε επίσης στο Δίκτυο εκμάθησης Qianxun Η λύση συνοψίζεται ως εξής:


Αρχικά, βεβαιωθείτε ότι η σελίδα HTML ξεκινά με μια δήλωση DOCTYPE. Το DOCTYPE λέει στο πρόγραμμα περιήγησης ποια προδιαγραφή HTML ή XHTML να χρησιμοποιήσει για την ανάλυση ενός εγγράφου HTML, γεγονός που επηρεάζει τους ακόλουθους παράγοντες:
Περιορισμοί στα χαρακτηριστικά και τις ιδιότητες των tag
Επηρεάζει τη λειτουργία απόδοσης του προγράμματος περιήγησης και οι διαφορετικοί τρόποι απόδοσης επηρεάζουν την ανάλυση του κώδικα CSS από το πρόγραμμα περιήγησης, ακόμη και των σεναρίων Javascrip{filter}t
Το DOCTYPE είναι κρίσιμο και η τρέχουσα βέλτιστη πρακτική είναι να πληκτρολογείτε στην πρώτη γραμμή του εγγράφου HTML:
<!DOCTYPE html>


Υπάρχουν διάφοροι λόγοι για την εύρεση του bootstrap που συνοψίζεται στην ανάρτηση του θεού, πρώτα απ 'όλα, το Bootstrap3 αναπτύχθηκε πρώτα με βάση την αρχή της κινητής συσκευής, επομένως οι λόγοι μπορεί να είναι οι εξής:
1. Η απομακρυσμένη διεύθυνση δεν καλείται σωστά
Δηλαδή, εφόσον είναι IE9 ή χαμηλότερο, καλέστε δύο ειδικά js
<!-- Υποστήριξη HTML5 Shim και Respond.js IE8 στοιχείων HTML5 και ερωτημάτων πολυμέσων -->
<!--[αν 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]-->
Αλλά δοκίμασα και διαπίστωσα ότι η χρήση μόνο των παραπάνω αρχείων js δεν είναι εφικτή,
2. Η μέθοδος κλήσης είναι λανθασμένη
Μην αναφέρετε αρχεία respond.min.js ή respond.js ή CSS σε file:// ή @import μορφή


3. Προσδιορισμός του περιεχομένου του προγράμματος περιήγησης (χρήση μετα-ετικετών για την προσαρμογή της μεθόδου απόδοσης του προγράμματος περιήγησης)
Το bootstrap δεν υποστηρίζει τη λειτουργία συμβατότητας IE και για να εκτελέσει ο IE την πιο πρόσφατη λειτουργία απόδοσης, θα προστεθούν οι ακόλουθες ετικέτες στη σελίδα

IE=edge σημαίνει ότι ο πιο πρόσφατος πυρήνας IE είναι αναγκαστικός και chrome=1 σημαίνει ότι εάν είναι εγκατεστημένη η προσθήκη του προγράμματος περιήγησης Google Chrome Frame για IE6/7/8 και άλλες εκδόσεις (που μπορεί να κάνει το πρόγραμμα περιήγησης του χρήστη να φαίνεται ακόμα το μενού και η διεπαφή του IE, αλλά ο χρήστης χρησιμοποιεί πραγματικά τον πυρήνα του προγράμματος περιήγησης Chrome κατά την περιήγηση στον ιστό), τότε ο πυρήνας του Chrome χρησιμοποιείται για απόδοση. Για μια συγκεκριμένη εξήγηση αυτής της μετα-ετικέτας, δείτε την εξαιρετική απάντηση στο StackOverflow και την <meta>αγγλική εξήγηση του ειδικού ετικετών μπορείτε να βρείτε εδώ
http://stackoverflow.com/questions/6771258/whats-the-difference-if-meta-http-equiv-x-ua-compatible-content-ie-edge-e
Πρόσθεσα
<meta http-equiv="X-UA-Συμβατό" content="IE=9" />
Και μετά ορίστε
Ο πυρήνας ελέγχει τη μετα-ετικέτα, επειδή τα τρέχοντα κύρια προγράμματα περιήγησης στην Κίνα είναι διπλοί πυρήνες, επομένως η μετα-ετικέτα προστίθεται για να πει στο πρόγραμμα περιήγησης ποιον πυρήνα να χρησιμοποιήσει για την απόδοση της σελίδας


4. Το IE8 δεν υποστηρίζει πολλές ιδιότητες των δοχείων
Ο IE8 δεν υποστηρίζει πλήρως το μέγεθος του κουτιού: το border-box χρησιμοποιείται με ελάχιστο πλάτος, μέγιστο πλάτος, ελάχιστο ύψος ή μέγιστο ύψος. Επομένως, η κλάση κοντέινερ στο bootstrap v3.0.1 δεν χρησιμοποιεί πλέον μέγιστο πλάτος.


5.JS πρόβλημα που προκαλείται από τη σειρά με την οποία εισάγεται το CSS
Πρέπει να παραθέσετε το css πριν αναφερθείτε στο js
<link rel="φύλλο στυλ" type="text/css" href="bootstrap.min.css" media="οθόνη"/>
<scrip{filter}t type="text/javascrip{filter}t" src="js/respond.min.js"></scrip{filter}t>


6. Το DOCTYPE έχει κενές γραμμές πριν και μετά
<!DOCTYPE html>
Δεν είναι εντάξει να υπάρχουν κενά εδώ, πρέπει να αφαιρέσετε τα κενά
<html>


7. Μπορείτε επίσης να τροποποιήσετε το bootstrap.css χειροκίνητα
Εάν χρησιμοποιείτε bootstrap 2.1.1, η τροποποίηση του navbar-inner{ filter:none} μπορεί να λύσει το πρόβλημα, εάν χρησιμοποιείτε την έκδοση 3.0+, δεν υπάρχει κωδικός, ανατρέξτε στη σύνδεση για λεπτομέρειες
http://stackoverflow.com/questions/12460190/bootstrap-navbar-does-not-show-in-ie8


8. Χρησιμοποιήστε τη λειτουργία ιδιορρυθμιών
Κατά τον ορισμό μιας ιστοσελίδας, η λειτουργία που είναι συμβατή με παλαιότερα προγράμματα περιήγησης είναι η λειτουργία ιδιορρυθμιών και η αντίστοιχη "τυπική λειτουργία" είναι η τυπική λειτουργία. Συγκεκριμένα, <!DOCTYPE html> γράφεται όπως πριν
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Το δοκίμασα, αλλά δεν είναι εφικτό


Τέλος, δοκίμασα με IE11, αλλά δοκίμασα με IE8 και βρήκα ένα πρόβλημα ότι το σύμβολο κράτησης θέσης δεν υποστηρίζεται
Δείτε πώς μπορείτε να λύσετε την υποστήριξη του IE για σύμβολα κράτησης θέσης
Το jquery που αναφέρεται σε αυτό το άρθρο ελέγχεται στην έκδοση 1.11.1 και το jquery αναφέρεται πρώτο
<scrip{filter}t type="text/javascrip{filter}t" src="http://code.jquery.com/jquery-1.11.1.min.js"></scrip{filter}t>
Μπορείτε επίσης να χρησιμοποιήσετε άλλες εκδόσεις jquery
Στη συνέχεια, εισάγετε <scrip{filter}t type="text/javascrip{filter}t" src="js/jquery.placeholder.js"></scrip{filter}t>
jquery.placeholder.js διεύθυνση λήψης για αυτό το αρχείο https://github.com/mathiasbynens/jquery-placeholder
Στη συνέχεια, προσθέστε λίγο κώδικα στο αρχείο
<scrip{filter}t type="text/javascrip{filter}t">
    $(συνάρτηση () {
        Καλέστε το πρόσθετο
        $('input, textarea').placeholder();
    });
</scrip{filter}t>
Εάν εμπλέκομαι εδώ ή εάν το πρόβλημα εξακολουθεί να είναι άλυτο, μετακινήστε http://hustlzp.com/post/2014/01/ie8-compatibility περισσότερες λεπτομέρειες


Τα παραπάνω IE6, 7, 8, 9, 10, 11, chrome, firefox, safari, opera, πρόγραμμα περιήγησης 360 (λειτουργία ταχύτητας), δοκιμή προγράμματος περιήγησης Sogou πέρασε, μόνο το IE5.5 φαίνεται να μην είναι εφικτό, με λίγα λόγια, το πρόβλημα λύνεται εδώ, όλο το κακό IE6 - ονομάστε το σάλτσα σόγιας


Εάν δεν θέλετε να χρησιμοποιήσετε jquery.placeholder.js, δεν μπορείτε πλέον να υποστηρίξετε υλοποιήσεις εξομοίωσης κράτησης θέσης στα προγράμματα περιήγησης
Μπορείτε να ανατρέξετε σε αυτό το άρθρο για μια πολύ λεπτομερή http://ju.outofmemory.cn/entry/1595




Προηγούμενος:Το Winform κατεβάζει την απομακρυσμένη εικόνα και την εμφανίζει
Επόμενος:Ορισμένες εξαιρέσεις στο Nhibernate στο mono Argument δεν μπορούν να είναι μηδενικές
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 3/8/2016 11:05:15 μ.μ. |
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com