CSS3 PIE 与 :first-child 冲突
Posted
技术标签:
【中文标题】CSS3 PIE 与 :first-child 冲突【英文标题】:CSS3 PIE conflicting with :first-child 【发布时间】:2011-11-30 20:54:47 【问题描述】:我正在使用 CSS3 PIE 为 IE8 及更早版本添加对边框半径的支持,但它与 :first-child 选择器冲突。
基本上,我将三个列表项向左浮动。每个都有10px的左边距,除了第一个,我设置为0:
#步骤李 边框半径:10px; 向左飘浮; 左边距:10px; #steps li:first-child 左边距:0;当我将 PIE 应用于 #steps li
选择器以添加对边框半径的支持时,第一个列表项将重新绘制,左边距设置回 10 像素,就好像 #steps li:first-child
选择器不存在一样。我可以看出这是由于 PIE 重绘了元素,因为它在正确的位置短暂闪烁,然后在一瞬间移动了 10 像素以上。
我尝试将 PIE 应用于两个选择器,但这并没有什么不同,而且我在 PIE 支持论坛上找不到任何与第一个孩子有关的信息。
【问题讨论】:
【参考方案1】:查看官方论坛CSS3 PIE Forums - IE :first/last-child overwritten
最终结果是你需要添加
#steps css3-container:first-child + li,
#steps li:first-child
margin-left: 0;
【讨论】:
既然 CSS3 PIE 已经存在,甚至可以启用 CSS3 选择器,并使用#steps li:first-of-type
;)
哦,不是吗?太烂了:(
@BoltClock chuckle..也许你把它和ie-css3.js
混淆了?
我不是——我希望 PIE 也能填充选择器。但是,嘿,Selectivizr 看起来很酷。以上是关于CSS3 PIE 与 :first-child 冲突的主要内容,如果未能解决你的问题,请参考以下文章
当我使用 cakephp 时,我在哪里放置 PIE.htc 文件(用于使 IE 与 CSS3 一起工作)