您在示例中看到的正方形是iframe邊框。您可以輕鬆地刪除與風格:
iframe {
border: 0;
}
iframe的內容顯然溢出包含div,當div有position: absolute
(或relative
,對於這個問題)。我不明白爲什麼會是這樣,但你總是可以解決,通過包裹在只包含div和iframe的容器該專區,並移動定位到該元素:
<div id="outer">
<div>
<iframe></iframe>
</div>
</div>
#outer {
position: absolute;
width: 100px;
height: 100px;
}
#outer > div {
border-radius: 50px;
height: 100px;
width: 100px;
overflow: hidden;
border: 5px solid #D3D3D3;
}
iframe {
border: 0;
background-color: pink;
height: 100%;
overflow: hidden;
width: 100%;
}
考慮到這一點後,您會注意到iframe與邊框的一部分重疊。如果您只是刪除position: absolute
,這與您在Chrome中看到的行爲相同。
然而,現在你確實有一個包裝,它也是一個小的修復,也將邊框移動到該包裝,這也將照顧到這個問題,並給你一個很好的圓形邊框,這將看起來在所有現代瀏覽器中都是一樣的。要繼續都的div的border-radius
財產,但border
財產轉移到#outer
注意。現在,由於包裝具有邊框,它的孩子沒有,包裝會稍微大一些,所以順利的圓圈,所以還需要一個稍大的邊界半徑:
#outer {
position: absolute;
width: 100px;
height: 100px;
border: 5px solid #D3D3D3;
border-radius: 55px;
}
#outer > div {
border-radius: 50px;
height: 100px;
width: 100px;
overflow: hidden;
}
iframe {
border: 0;
background-color: pink;
height: 100%;
overflow: hidden;
width: 100%;
}
Working demo
[這是你想要實現的嗎?](http://jsfiddle.net/tX3Xc/)因爲這在Chrome中適用於我。你的項目有什麼不同? –
感謝您的回覆。我能夠使用該網站重新創建問題:http://jsfiddle.net/tX3Xc/3/ – Ber53rker