我有一个奇怪的错误 在我的.css文件中,我有以下规则:
.conf-view a
{
padding-left: 10px;
background-image: url("images/bullet-green.gif");
background-position: center left;
background-repeat: no-repeat;
}
问题是IE以某种方式解释它:
.conf-view A /* NOTE - this is copied from the IE-Developer tools css tab. */
background-image : url(images/bullet-green.gif); PADDING-LEFT: 10px
background-repeat : no-repeat
background-position : left center
看到那里的填充物?
现在浏览器只是忽略填充规则,导致布局失败..
这是一个已知的错误吗?任何人都可以找到解决方法吗?
非常感谢 幼狮
答案 0 :(得分:3)
IE开发者工具中似乎是一个错误,如果您单独指定了背景图像,那么显示代码只会吞噬下一个非背景定义(按字母顺序排序)。你的文字没有在任何一个链接上的那个页面上重叠你的背景图像,所以对我来说似乎无论如何都正确地解释了CSS;你能解释为什么你认为情况并非如此吗?
我不知道他们是如何设法创建该错误的,但是如果你想让它消失,那么在速记中指定背景定义似乎没有表现出这种行为:
background:transparent url("images/bullet-green.gif") scroll no-repeat left center;
答案 1 :(得分:2)
它似乎是应用背景图像的不同方式...在保存代码并使用样式表设置进行播放时,填充到50会移动图像和文本,这样就不会忽略填充,只是它以不同的方式处理背景图像的定位。
有趣的是,faileN的建议与我解决它的方法相去甚远。如果你把“display:inline-block;”那似乎适用于IE7和FF。当然,在使用它之前,你会想要测试它没有副作用。答案 2 :(得分:0)
也许这是因为a
- 元素通常是内联元素。这些元素具有背景图像和填充/边距并不常见,即使它是允许的。将display: block;
放入a-style-definition中。也许它可以帮助你摆脱这种情况。
修改强>
等待您的示例代码:)