Heim > Web-Frontend > CSS-Tutorial > Warum unterscheidet sich das Verhalten des Randradius von Safari von dem anderer Browser?

Warum unterscheidet sich das Verhalten des Randradius von Safari von dem anderer Browser?

Barbara Streisand
Freigeben: 2024-12-14 21:58:11
Original
845 Leute haben es durchsucht

Why Does Safari's Border Radius Behavior Differ from Other Browsers?

Inkonsistenz des Browser-Randradius: Überraschendes Verhalten von Safari

Beim Gestalten einer Website sind wir auf ein besonders problematisches Problem gestoßen. Bei der Entwicklung einer Funktion, die Benutzerprofilbilder mit abgerundeten Ecken anzeigt, schien alles in Internet Explorer 8 und höher, Google Chrome und Mozilla Firefox reibungslos zu funktionieren. Allerdings zeigte Safari ein ziemlich eigenartiges Verhalten.

Um dieses Problem zu veranschaulichen, haben wir ein Bild mit einem 3-Pixel-Rand erstellt und einen Randradius von 50 % angewendet. Alles sah normal aus, bis wir dieselbe Seite in Safari öffneten. Der Rand erschien nicht als perfekter Kreis, sondern schnitt das Bild ab, was zu einem unerwünschten visuellen Effekt führte.

Bei weiteren Untersuchungen stellten wir fest, dass sich Safaris Interpretation des Randradius von der anderer Browser unterschied. Während IE, Chrome und Firefox den Rand von der Mitte des Bildes abgeschnitten haben, hat Safari ihn von der äußersten Grenze des Elements abgeschnitten. Diese Unterscheidung führte zu einer unbeabsichtigten Kürzung des Bildes selbst.

Um dieses Problem zu beheben, haben wir eine Problemumgehung implementiert, die den Rahmen vom Bild trennte. Indem wir das Bild in einem Container platzierten, konnten wir einen Randradius sowohl auf das Bild als auch auf den Container anwenden und so sicherstellen, dass beide abgerundete Ecken hatten.

Hier ist ein Ausschnitt des HTML- und CSS-Codes, der das Problem behoben hat Safari:

<div class="activity_rounded"><img src="http://placehold.it/100" /></div>
Nach dem Login kopieren
.activity_rounded {
    display: inline-block;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -khtml-border-radius: 50%;
    border: 3px solid #fff;
}

.activity_rounded img {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -khtml-border-radius: 50%;
    vertical-align: middle;
}
Nach dem Login kopieren

Mit diesem Ansatz zeigte Safari nun das Benutzerprofilbild mit einem perfekten kreisförmigen Rand an, konsistent mit den anderen Browsern. Darüber hinaus können Sie diese Lösung in unserer Live-Demo testen, um sie in Aktion zu sehen.

Das obige ist der detaillierte Inhalt vonWarum unterscheidet sich das Verhalten des Randradius von Safari von dem anderer Browser?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage