Heim Web-Frontend CSS-Tutorial Einführung in Multi-Browser-Kompatibilitätsprobleme und Lösungen mithilfe von CSS

Einführung in Multi-Browser-Kompatibilitätsprobleme und Lösungen mithilfe von CSS

Mar 14, 2017 pm 04:16 PM

Kompatibilitätsverarbeitungspunkte
1. DOCTYPE wirkt sich auf die CSS-Verarbeitung aus

2. FF: Nach dem Festlegen von Padding wird die Div-Größe Höhe und erhöht Breite, IE jedoch nicht, daher müssen Sie !important verwenden, um eine zusätzliche Höhe und Breite festzulegen

3. FF: unterstützt !important, aber IE ignoriert es. Sie können !important zum Festlegen verwenden ein spezieller Stil für FF

4. Vertikales Zentrierungsproblem von div: vertikal-align:middle; Erhöhen Sie den Zeilenabstand auf die gleiche Höhe wie das Ganze DIV line-height: 200px; Fügen Sie dann den Text ein und er wird vertikal zentriert. Der Nachteil besteht darin, dass der Inhalt ohne Zeilenumbrüche gesteuert werden muss

5. Das BOX--Modell in Mozilla Firefox und IE weist inkonsistente Interpretationen auf, was zu einem Unterschied von 2 Pixeln führt. Lösung:

div{margin :30px!important;margin:28px;}

Beachten Sie, dass die Reihenfolge dieser beiden Ränder nicht umgekehrt werden darf, !important dieses Attribut Der IE kann es nicht erkennen, andere Browser können jedoch identifiziert werden. Unter IE wird es also tatsächlich so interpretiert:

div{maring:30px;margin:28px}

Wenn Sie die Definition wiederholen, wird sie gemäß der letzten ausgeführt, also Sie kann nicht einfach margin:XXpx!important schreiben;

Browserunterschiede
1. Beim Entfernen der Einrückung von ul-, ol- und anderen Listen sollte der Stil berücksichtigt werden geschrieben werden als:
list-style
:none;margin:0px;padding:0px; Das Margin-Attribut ist für IE gültig und das Padding-Attribut ist für FireFox gültig.
[Hinweis] Es wurde bestätigt, dass im IE die Einstellung „margin:0px“ die oberen, unteren, linken und rechten Einzüge, Leerzeichen sowie Listennummern oder Punkte der Liste entfernen kann Der Stil; in Firefox kann die Einstellung „margin :0px“ nur die oberen und unteren Leerzeichen entfernen. Sie müssen auch „list-style:none“ festlegen, um Listennummern oder Punkte zu entfernen. Mit anderen Worten: Im IE kann nur margin:0px festgelegt werden, um den endgültigen Effekt zu erzielen, während in Firefox margin:0px, padding:0px und list-style:none gleichzeitig festgelegt werden müssen, um den endgültigen Effekt zu erzielen.

2. CSS-Transparenzproblem

IE: filter:progid:DXImageTrans
für
m.Microsoft.Alpha(style=0,opacity=60). FF:Deckkraft:0,6. [Hinweis] Es ist am besten, beides zu schreiben und das Deckkraftattribut unten anzugeben.

3. CSS-Problem mit abgerundeten Ecken

IE: Versionen unter ie7 unterstützen keine abgerundeten Ecken.
FF: -moz-b
ord
er-radius:4px, oder -moz-border-radius-topleft:4px -moz- border- radius-topright:4px;-moz-border-radius-bottomleft:4px;-moz- border- radius-bottomright:4px;. [Hinweis] Das Problem mit abgerundeten Ecken ist ein klassisches Problem in CSS. Es wird empfohlen, das JQuery
Framework zum Festlegen abgerundeter Ecken zu verwenden und diese komplexen Probleme anderen zu überlassen darüber nachdenken. Die abgerundeten Ecken von jQuery unterstützen jedoch nur die abgerundeten Ecken des gesamten Bereichs und nicht die abgerundeten Ecken dieses Randes. Ich werde es jedoch beim nächsten Mal vorstellen. 4. Cursor:Hand VS Cursor:Pointer

Problembeschreibung: Firefox unterstützt keine Hand, aber IE unterstützt Zeiger, beides sind Handanweisungen.
Lösung: Zeiger einheitlich verwenden.

Unterschiedliche Definitionen der Schriftgröße

Die Definition der Schriftgröße sm
alle
ist 13px in Firefox und 16px im IE . Lösung: Verwenden Sie die angegebene Schriftgröße, z. B. 14 Pixel.

Zwischen Divs und Divs mehrerer nebeneinander angeordneter Elemente (
Bilder
oder Links) werden Leerzeichen und Wagenrückläufe im Code in Firefox ignoriert, im IE jedoch standardmäßig angezeigt ist Platz (ca. 3px). 6. CSS-Doppellinien-Bump-Rand
IE: border:2px out
set
;. FF: -moz-border-top-colors: #d4d0c8 weiß;-moz-border-left-colors: #d4d0c8 weiß;-moz-border-right-colors:#404040 #808080;-moz-border- bottom-colors:#404040 #808080;
Browser-Fehler
1. IE-Fehler mit doppeltem Rand

Der für ein Div, das unter IE auf float eingestellt ist, festgelegte Rand wird verdoppelt. Dies ist ein Fehler, der in ie6 vorhanden ist.

Lösung: Fügen Sie display:inline

zu diesem Div hinzu:

<#div id="imfloat"> 🎜>
Das entsprechende CSS lautet

Der folgende Inhalt wird von
zitiert:

#IamFloat{ 
float:left; 
margin:5px;/*IE下理解为10px*/ 
display:inline;/*IE下再理解为5px*/ 
} 
#IamFloat{ 
float:left; 
margin:5px;/*IE下理解为10px*/ 
display:inline;/*IE下再理解为5px*/ 
}
Nach dem Login kopieren
Es gibt zu viele Probleme in CSS, sogar im gleichen CSS Definitionen haben in verschiedenen Seitenstandards unterschiedliche Anzeigeeffekte. Ein Vorschlag, der mit der Entwicklung übereinstimmt, ist, dass die Seite unter Verwendung von Standard-XHTML-Standards geschrieben werden sollte, mit weniger Verwendung von Tabellen, und dass CSS-Definitionen so weit wie möglich auf dem Standard-DOM basieren sollten, unter Berücksichtigung gängiger Browser wie IE, Firefox und Opera. In vielen Fällen sind die CSS-Interpretationsstandards von FF und Opera näher an den CSS-Standards und normativer.


2. IE-Selektor-Leerzeichenfehler
Als ich heute den ersten Zeichenstil für den Absatzstil meines Blogs festlegte, stellte ich fest, dass ein Leerzeichen den Stil auch ungültig machen kann.

Bitte schauen Sie sich den folgenden Code an:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="//www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
<style type="text/css"> 
<!-- 
p{font-size:12px;} 
p:first-letter{font-size:300%} 
--> 
</style> 
</head> 
<body>
Nach dem Login kopieren

Für die Welt sind Sie eine Person, aber für jemanden sind Sie seine ganze Welt. Auch wenn Sie traurig sind, runzeln Sie nicht die Stirn, denn Sie wissen nicht, wer sich in Ihr Lächeln verlieben wird.


[/code]

Dieser Code definiert den ersten Zeichenstil von

hat keine Auswirkungen auf IE6 (IE7 wurde nicht getestet), und zwischen p:first-letter und {font-size:300%}, also nach p:first-letter {font-size:300%}, wird ein Leerzeichen eingefügt } , die Anzeige ist normal. Aber der gleiche Code sieht unter FireFox normal aus. Logisch gesehen ist die Schreibweise von p:first-letter{font-size:300%} korrekt. Was ist also das Problem? Die Antwort ist der Bindestrich „-“ in der Pseudoklasse

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="//www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
<style type="text/css"> 
<!-- 
p{font-size:12px;} 
p:first-letter{font-size:300%} 
--> 
</style> 
</head> 
<body> 

对于世界而言,你是一个人;但是对于某个人,你是他的整个世界。纵然伤心,也不要愁眉不展,因为你不知是谁会爱上你的笑容。

Nach dem Login kopieren

. Im IE liegt ein Fehler vor. Wenn der Pseudoklassenname einen Bindestrich „-“ enthält, muss dem Pseudoklassennamen ein Leerzeichen folgen, andernfalls ist die Stildefinition ungültig. In FF kann es normal mit oder ohne Leerzeichen verarbeitet werden.

Das obige ist der detaillierte Inhalt vonEinführung in Multi-Browser-Kompatibilitätsprobleme und Lösungen mithilfe von CSS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

Es ist aus! Herzlichen Glückwunsch an das Vue -Team, dass es eine massive Anstrengung war und lange kommt. Alle neuen Dokumente auch.

Aufbau einer Ethereum -App mit Redwood.js und Fauna Aufbau einer Ethereum -App mit Redwood.js und Fauna Mar 28, 2025 am 09:18 AM

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Können Sie gültige CSS -Eigenschaftswerte aus dem Browser erhalten? Können Sie gültige CSS -Eigenschaftswerte aus dem Browser erhalten? Apr 02, 2025 pm 06:17 PM

Ich ließ jemanden mit dieser sehr legitimen Frage einschreiben. Lea hat gerade darüber gebloggt, wie Sie gültige CSS -Eigenschaften selbst aus dem Browser erhalten können. Das ist so.

Ein bisschen auf CI/CD Ein bisschen auf CI/CD Apr 02, 2025 pm 06:21 PM

Ich sage "Website" passt besser als "Mobile App", aber ich mag dieses Rahmen von Max Lynch:

Gestapelte Karten mit klebriger Positionierung und einem Schuss Sass Gestapelte Karten mit klebriger Positionierung und einem Schuss Sass Apr 03, 2025 am 10:30 AM

Neulich habe ich dieses besonders schöne Stück von der Website von Corey Ginnivan entdeckt, auf der eine Sammlung von Karten aufeinander stapelt.

Verwenden von Markdown und Lokalisierung im WordPress -Block -Editor Verwenden von Markdown und Lokalisierung im WordPress -Block -Editor Apr 02, 2025 am 04:27 AM

Wenn wir dem Benutzer direkt im WordPress -Editor Dokumentation anzeigen müssen, wie können Sie dies am besten tun?

Vergleich von Browsern für reaktionsschnelles Design Vergleich von Browsern für reaktionsschnelles Design Apr 02, 2025 pm 06:25 PM

Es gibt eine Reihe dieser Desktop -Apps, in denen das Ziel Ihre Website gleichzeitig in verschiedenen Dimensionen angezeigt wird. So können Sie zum Beispiel schreiben

Warum werden die lila abgeschnittenen Bereiche im Flex -Layout fälschlicherweise als 'Überlaufraum' betrachtet? Warum werden die lila abgeschnittenen Bereiche im Flex -Layout fälschlicherweise als 'Überlaufraum' betrachtet? Apr 05, 2025 pm 05:51 PM

Fragen zu lila Schrägstrichen in Flex -Layouts Bei der Verwendung von Flex -Layouts können Sie auf einige verwirrende Phänomene stoßen, wie beispielsweise in den Entwicklerwerkzeugen (D ...

See all articles