CSS3 PIE与第一个孩子相冲突

时间:2011-10-04 16:56:32

标签: css internet-explorer css3 css3pie css-selectors

我正在使用CSS3 PIE将border-radius的suppport添加到IE8及更早版本,并且它与:first-child选择器冲突。

基本上,我有三个列表项左侧浮动。每个都有一个10px的左边距,除了第一个,我设置为0:

#steps li {
    border-radius: 10px;
    float: left;
    margin-left: 10px;
}
#steps li:first-child {
    margin-left: 0;
}

当我将PIE应用于#steps li选择器以添加对border-radius的支持时,会重新绘制第一个列表项,并将左边距设置回10px,就好像#steps li:first-child选择器不是那里。我可以告诉它是由于PIE重新绘制元素,因为它会在正确的位置短暂闪烁,然后在一瞬间转换为10px。

我尝试将PIE应用于两个选择器,但这没有任何区别,我无法在PIE支持论坛上找到与第一个孩子有关的任何内容。

1 个答案:

答案 0 :(得分:4)

查看CSS3 PIE Forums - IE :first/last-child overwritten

上的官方论坛

最终结果是您需要添加

#steps css3-container:first-child + li, 
#steps li:first-child {
    margin-left: 0;
}