我正在尝试使用三个背景图像制作一个按钮,以便我们可以为按钮的文本提取翻译并很好地展开。我们可能会为 IE8 添加一个基本样式,但我们的设计师希望我们使用这种样式,而我们无法用纯 CSS3 很好地重新创建它。
以下是图片:
这是 HTML (只是一个简单的按钮,但我想我还是应该把它:
<button class="back clickable" aria-label="Back" onclick="javascript:history.back();">Back</button>
我已经尝试了几件事;我将粘贴两次尝试的 CSS。
尝试 1:使用伪选择器
http://jsfiddle.net/c2B6X/
.back {
background: url("images/back-middle.png") 14px 0 repeat-x;
color: $white;
height: 28px;
padding: 5px;
&:before {
background: url("images/back-front.png") 0 0 no-repeat;
width: 14px;
}
&:after {
background: url("images/back-end.png") 100% 0 no-repeat;
width: 8px;
}
}
尝试2:三个background-image
s
http://jsfiddle.net/nPUQN/
.back {
background: none;
background-image: url("images/back-middle.png"), url("images/back-end.png"), url("images/back-front.png");
background-position: 14px 0, 100% 0, 0 0;
background-repeat: repeat-x, no-repeat, no-repeat;
border-right: 8px transparent;
border-left: 14px transparent;
color: $white;
height: 28px;
padding: 5px;
}
如果它看起来像非典型 CSS,那是因为我们使用的是 SASS。
有什么明显的我遗漏或做错了吗?任何有关如何使这项工作的建议将不胜感激。
编辑
由于我得到了这么多“有效”的答案,我将标记正确的答案在 Chrome、FF 和 IE9 中效果最好。
编辑 2
我已经尝试了所有答案,但在 IE9 中都没有。我们必须支持 IE9(和 IE8,但我暂时不会去那里)。我要开始赏金了。任何可以提供适用于 IE9、Firefox 和 Chrome 的答案的人都会得到它。