2013-04-20 73 views
0

当我在Windows 7中进入高对比度模式时,背景图像变得不可见。这是操作系统积极地跨过了CSS中的所有background属性。 (我不确定这是如何工作的)。我想知道如果这些属性可以被覆盖,并使用扩展或用户样式的CSS可见。从用户端取消CSS属性

例如,这里是在Amazon.com上的背景图片得到划掉的CSS属性(包括评级明星图片)

.srSprite { 
    background: url("http://g-ecx.images-amazon.com/images/G/01/nav2/images/gui/searchSprite._V373035005_.gif") repeat scroll 0 0 transparent; 
} 

我试图使这些可见通过将以下在时尚的风格。 Stylish是一款定制CSS的Firefox插件。

@-moz-document url-prefix(http://), url-prefix(https://), url-prefix(ftp://){ 
.srSprite{ 
    background: no-peat scroll 0 0 transparent !important; 
    display: inline-block !important; 
    margin: 0 !important; 
    overflow: hidden !important; 
    padding: 0 !important; 
    position: relative !important; 
    vertical-align: middle !important; 

} 
} 

但它似乎没有工作。我做错了什么,或者有其他方法来解决这个问题吗?

回答

0

这是通过设计行为。高对比度模式的目的是使一切更容易获得,其中包括消除可能降低对比度的背景图像等“噪点”。

这个blog post有关于Windows高对比度模式范式的更多信息。我们大多数人可能应该多考虑一下(包括我在内)。

+0

我以前遇到过这个页面,但是如果你看看firebug,CSS信息就在那里,它只是浏览器符合操作系统而不显示精灵。我相信这是最终用户可以克服的问题,我正在寻求解决方案。也许它需要一些破解。也许WC3不兼容的网络浏览器...希望不是。 – Forethinker 2013-04-20 21:08:24

+0

哦,你是最终用户,想要克服这一点?我认为你是一位开发人员,希望在自己的网站上解决它。难道你不能用Windows的颜色来模拟高对比度的模式,而是使用正常的对比度来避免覆盖? 另一种方法可能是使用虚拟机,它内部具有常规对比主题,运行浏览器。你可以用'Chromium'在512 RAM内运行一个简单的'Linux'发行版。 – 2013-04-20 21:13:07