Wählen Sie die besten Voreinstellungen aus, um vollständige Kompatibilität mit allen Browsern zu erreichen.

Wählen Sie die besten Voreinstellungen aus, um vollständige Kompatibilität mit allen Browsern zu erreichen.
Wir wissen, dass die Eigenschaften des Auswahltags in jedem Browser und die Unterstützung jedes Browsers etwas unterschiedlich sind, was dazu führt, dass die Anzeige des Auswahlfelds in jedem Browser unterschiedlich ist. Als Nächstes erstellen wir eine vollständig kompatible Auswahl, indem wir die wichtigsten CSS-Erscheinungseigenschaften unterstützen.
Ich habe eine DEMO für die Höhe, Polsterung und Zeilenhöhe der Auswahl mithilfe der Kontrollvariablenmethode geschrieben, um drei Situationen in verschiedenen Browsern zu testen: height.100.padding.0, height.no.padding.100, no.height.no.padding. Die Ergebnisse werden in den verlinkten Bildern angezeigt. Das DEMO-Erscheinungsbild jedes Browsers

Wir können die folgenden Forschungseigenschaften ableiten.

ie6

ie7

ie8

ie9

ff

ch

sf

op

Standardhöhe

22px

22px

19px

20px

19px

19px

Höhe

F

T

T

T

T

T

F

T

Polsterung

F

F

T

T

T

T

F

T

Zeilenhöhe

F

F

F

F

F

F

T

F

Text vertikal zentrieren

T

T

T

F

F

T

T

T


Durch die obige Zusammenfassung der Forschungsergebnisse und Attribute wissen wir, dass IE6 eine feste Höhe von 22px hat, egal wie sie eingestellt wird, und dass andere Browser außer Safari das Höhenattribut unterstützen, sodass wir die Höhe auf 22px einstellen. Jetzt korrigieren wir den Safari-Browser. Wir haben festgestellt, dass nur Safari das Zeilenhöhenattribut unterstützt. Daher können wir die Zeilenhöhe verwenden, um die Höhe auf 22 Pixel zu korrigieren. Unter der Voraussetzung, dass die Schriftgröße 12 Pixel beträgt, setzen wir Zeilenhöhe: 22 Pixel. Schließlich ist der Text in FF und IE9 nicht zentriert. Wir setzen dafür padding: 2px 0. Wir haben festgestellt, dass FF und IE9 zentriert sind, aber die Höhe der Auswahl in jedem Browser hat sich nicht erhöht. Hier ist also eine Frage. Wenn die Höhe eingestellt ist, erhöht das Padding einer kleinen Zahl nicht die Gesamthöhe?
Das Folgende ist ein vollständig kompatibles Codebeispiel.

Code kopieren
Der Code lautet wie folgt:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<Kopf>
<meta http-equiv="Inhaltstyp" content="text/html; charset=utf-8" />
<Titel>Demo</Titel>
<Stil>
*{Auffüllung:0; Rand:0}
Textkörper {Schriftgröße: 12px}
Wählen Sie {Höhe: 22px; Zeilenhöhe: 18px; Polsterung: 2px 0}
</Stil>
</Kopf>
<Text>
<div Stil="Rand oben:20px; Rand links:20px; Hintergrund:#000">
<Auswählen>
<option>Demonstrationsfrage 1</option>
<option>Demonstrationsfrage 2</option>
<option>Demonstrationsfrage 3</option>
<option>Demonstrationsfrage 4</option>
<option>Demonstrationsfrage 5</option>
</Auswählen>
</div>
</body>
</html>

<<:  Fünf Verzögerungsmethoden für die MySQL-Zeitblindinjektion

>>:  Wie oft werden mehrere setStates in React aufgerufen?

Artikel empfehlen

So installieren und konfigurieren Sie WSL unter Windows

Was ist WSL Zitat aus der Baidu-Enzyklopädie: Das...

So stellen Sie FastDFS in Docker bereit

Installieren Sie Fastdfs auf Docker Mount-Verzeic...

Ein praktischer Bericht über die Wiederherstellung einer MySQL Slave-Bibliothek

Beschreibung der Situation: Heute habe ich mich b...

CSS zum Erzielen eines Chat-Blaseneffekts

1. Rendern JD-Effekt Simulationseffekt 2. Grundsa...

Vue realisiert Preiskalendereffekt

In diesem Artikelbeispiel wird der spezifische Co...

Tutorial zur Installation der Dekomprimierungsversion von MySQL 8.0.12

In diesem Artikel finden Sie das Installations-Tu...

Detaillierte Erklärung der Docker-Maschinennutzung

Docker-Machine ist ein offiziell von Docker berei...