我有一个图像,按钮垂直对齐。然后我使用css指定“background-position”来显示基于按钮类的正确按钮。我遇到的问题是,当用户按下“cmd +”(或缩放浏览器)时,图像“变大”并开始看到其他按钮(不同的颜色)。如何使背景“固定”以使其不会随浏览器放大。
提前致谢!
这是CSS:https://gist.github.com/b5d52ab2a2f84ed82fb4
预览:正常:cl.ly/3d3y2D3c0D0A2T1n0f0G和ZOOOMED:cl.ly/1K2t450p2m3B2x133j04
奇怪的是,效果似乎只出现在Safari中(我测试过chrome,safari和firefox)
答案 0 :(得分:0)
看来你正在患上css-sprites出血问题 这并不容易解决,因为并非所有浏览器都以相同的方式放大。
一种解决方法是将文本嵌入按钮本身,这将阻止浏览器增加文本而不是按钮。但这种失败了css sprites的目的..
另一种解决方法是使用PHP脚本将文本生成为图像,然后将其放在按钮前面。这样可以在保持当前系统灵活性的同时防止缩放。
或者您也可以制作一个想要使用的所有按钮文本的精灵,然后组合这两个精灵来显示您想要的按钮。
答案 1 :(得分:0)
我没有看到为图像容器指定的明确宽度或高度。某些浏览器可能依赖于此来正确调整大小。
您可以尝试设置px
值,如果这不起作用,请尝试em
,因为它是相对于基线字体大小的测量值。
或者,你可以使用CSS3而不是背景图像,只让IE有方角。
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
border-radius: 6px;
background: url(sweet-gradient.png) top left no-repeat;
答案 2 :(得分:-1)