Серьезно ненавижу IE.
В любом случае мне пришлось написать код, чтобы исправить это с помощью jquery.
$(function(){
if($.browser.msie) $('.box').each(function(){
var c = $(this).attr('class').replace('box','');
$(this).wrap('<div class="round-fix '+c+'" />');
});
$('.round-fix').corner();
$('.round-fix .box').corner();
});
Тогда остался какой-то CSS, чтобы все это заработало
.box{
margin-bottom: 16px;
padding:10px 10px 10px 10px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
}
.border-pink{
border: 2px solid #EB008B;
}
.border-brown{
border: 2px solid #754C28;
background-color: #F4EDE9;
}
.border-green{
border: 2px solid #00AA00;
}
/* IE FIX */
.round-fix{
margin-bottom: 1em;
padding: 2px;
}
.round-fix .box{
background-color: white;
margin-bottom: 0;
}
.round-fix.border-pink{
background-color:#EB008B;
}
.round-fix.border-brown{
background-color:#754C28;
}
.round-fix.border-brown .box{
background-color: #F4EDE9;
}
.round-fix.border-green{
background-color: #00AA00;
}
Так что в основном - у меня была куча коробок, которые по углам не показывались, потому что они использовали фоновые цвета и игнорировали цвета границ. Я обернул округленный div в другой div и применил цвет границы от внутреннего div к внешнему div (только через css, хотя, вероятно, это можно было бы сделать лучше с помощью jquery), а затем я добавил некоторые отступы на внешнее поле. Наконец установите внутреннюю коробку на белый или любой другой цвет, который вы обычно используете. Очевидно, это не будет работать для прозрачности, но с тех пор, когда прозрачность ведет себя в IE в любом случае: с. Также обратите внимание, если вы установили ширину на внутреннем блоке непосредственно на элементе, вам нужно будет установить эту ширину и на внешнем элементе. это относится к любым свойствам CSS, которые устанавливаются непосредственно на внутренний элемент.