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>
.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; }
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!