2015-02-11 104 views
2

我無法使IE11及其以上版本(以及Windows上的Safari 5.1)正確應用overflow:hidden來僞造具有邊框半徑的元素。IE11中僞元素溢出錯誤

添加溢出:隱藏到父元素解決了這個問題,但不幸的是,在我的情況下,我不能應用溢出隱藏到父項。

div:after { 
    content: "X"; 
    display: block; 
    width: 200px; 
    height: 200px; 
    font-size: 300px; 
    border: 1px solid red; 
    border-radius: 100%; 
    overflow: hidden; 
} 

這裏的筆來說明:

http://codepen.io/alexandtheweb/pen/GgMyXO

+0

您是否曾嘗試向父元素添加相對位置? – 2015-02-11 12:04:53

+0

@HeriHeheSetiawan我做了,沒有運氣。還嘗試過文本溢出:剪輯和添加位置:相對於僞元素本身。 – 2015-02-11 12:09:39

+0

@AlexG你可以修改你的html結構嗎? – 2015-02-11 12:32:40

回答

-1

http://codepen.io/anon/pen/xbpYyR

div { 
    display: block; 
    width: 200px; 
    height: 200px; 
    font-size: 300px; 
    border: 1px solid red; 
    border-radius: 100%; 
    overflow: hidden; 
} 

div:after { 
    content: "X"; 
} 

我剛剛解僱了IE8的一個虛擬機,它不會在那裏工作,但IE10似乎工作正常。無法在ie9上測試,因爲我不再信任兼容模式。

+0

IE8首先不支持border-radius。 – BoltClock 2015-02-11 12:48:00

+0

我在兼容模式下測試過,它顯示正確,但你是對的,它不應該。 – Sirence 2015-02-11 12:52:15