瀏覽器邊框半徑不一致:Safari 的令人驚訝的行為
在設計網站樣式的過程中,我們遇到了一個特別麻煩的問題。在開發以圓角顯示使用者個人資料圖像的功能時,一切似乎在 Internet Explorer 8 及更高版本、Google Chrome 和 Mozilla Firefox 中無縫運行。然而,Safari 表現出了相當奇怪的行為。
為了示範這個問題,我們建立了一個具有 3px 邊框的影像,並套用了 50% 的邊框半徑。一切看起來都很正常,直到我們在 Safari 中開啟同一頁。邊框並不是完美的圓形,而是截斷了圖像,導致了不良的視覺效果。
經過進一步調查,我們意識到 Safari 對邊框半徑的解釋與其他瀏覽器不同。 IE、Chrome 和 Firefox 從影像中心裁切邊框,而 Safari 則從元素的最外邊界裁切邊框。這種區別導致影像本身被意外截斷。
為了解決此問題,我們實作了一種解決方法,將邊框與影像分開。透過將圖像放置在容器中,我們能夠對圖像和容器應用邊框半徑,確保兩者都有圓角。
以下是解決此問題的HTML 和CSS 程式碼片段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; }
透過這種方法,Safari 現在以完美的圓形邊框顯示用戶個人資料圖像,與其他瀏覽器一致。此外,您可以在我們的現場演示中測試此解決方案,看看它的實際效果。
以上是為什麼 Safari 的邊框半徑行為與其他瀏覽器不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!