Ich bin kürzlich beim Schreiben eines CSS auf ein Problem gestoßen: Die Zeilenhöhen von englischen Buchstaben und chinesischen Schriftzeichen sind unterschiedlich, was zu Abweichungen in den eingestellten Rand- oder Fülleigenschaften führt, wenn alle chinesischen Schriftzeichen, alle englischen Buchstaben und chinesischen Schriftzeichen gemischt werden. .. Natürlich besteht diese Situation im IE-Browser, Safari, Google Chrome, Firefox und Opera haben keine ähnlichen Probleme
Ursache:
Bei Verwendung aller chinesischen Schriftzeichen:
Im Allgemeinen können Sie beim Auswählen von Text sehen, dass chinesische Zeichen nach oben ausgerichtet sind (die konkrete Erscheinung besteht darin, dass es beim Auswählen einer Schriftart so aussieht, als gäbe es unterhalb des Hintergrunds einen zusätzlichen Teil. In CSS-Begriffen der Abstand). -bottom-Attribut wird generiert. Um das Problem zu erklären, nehmen wir an, dass es Padding-Eigenschaften gibt.
Wenn alle englischen Buchstaben verwendet werden:
ähnelt der unteren Ausrichtung aller chinesischen Zeichen im Fall aller englischen Buchstaben, und es wird ein Attribut ähnlich dem padding-top angezeigt. Unabhängig davon, ob es sich ausschließlich um chinesische oder ausschließlich englische Schriftzeichen handelt, ist die Zeilenhöhe gleich.
Gemischte Buchstaben und chinesische Schriftzeichen:
Aber wenn Sie chinesische Schriftzeichen und englische Buchstaben miteinander mischen, können Sie den Unterschied erkennen. Zu diesem Zeitpunkt können Sie alle Schriftarten auswählen und das sehen Zu diesem Zeitpunkt handelt es sich um einen Füller. Dies bedeutet, dass es ein zusätzliches Polster oben (oder ein Polster unten) gibt 2px.
Lösung:
Schriftart ändern:
Ich wollte ursprünglich die Zeilenhöhe verwenden, um das Problem zu beheben, aber die Zeilenhöhe ist der Abstand zwischen der Grundlinie jeder Zeile und Da sich die Grundlinie der chinesischen Schriftzeichen von der der englischen Buchstaben unterscheidet, funktioniert sie nicht. Außerdem ist sie nutzlos, wenn sie als Navigationsmenü mit nur einer Zeile verwendet wird.
Der einzige Weg, um dieses Problem zu lösen, ist „Songti“. " Der Dateiname ist „simsun“, und sein Bruder „simhei“ ist das, was allgemein als „heihei“ bekannt ist.
Die Lösung besteht also darin, die Schriftfamilie auf „simsun“ zu setzen, wodurch möglicherweise einige Effekte verloren gehen. Wenn jemand eine bessere Lösung hat, geben Sie bitte einen Rat.