display: inline-block;
已添加到代码中,并确保IE和Firefox也正确显示-moz-inline-stack;
和*display: inline;
。
虽然采取了这些步骤,但firefox不愿意正确显示该元素。
这是预期的显示:
这就是firefox显示它的方式:
#currencies {
display: -moz-inline-stack;
display: inline-block;
zoom: 1;
*display: inline;
color: black;
font-size: 0; /* to eliminate space between buttons */
line-height: 1.5;
cursor: pointer;
}
#currencies span {
display: -moz-inline-stack;
display: inline-block;
zoom: 1;
*display: inline;
padding: 1.5px 5px;
border: 1px solid black;
background: none #F6F6F6;
font-size: 12px;
background-color: transparent;
font: Montserrat;
letter-spacing: 2px;
vertical-align: 2px;
}
#currencies .left {
-webkit-border-top-left-radius: 4px;
-webkit-border-bottom-left-radius: 4px;
-moz-border-radius-topleft: 4px;
-moz-border-radius-bottomleft: 4px;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
border-right: none;
}
#currencies .right {
-moz-vertical-alignment: top;
-webkit-border-top-right-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
-moz-border-radius-topright: 4px;
-moz-border-radius-bottomright: 4px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
border-left: none;
}
#currencies .selected {
font-weight: normal;
color: white;
background: black;
zoom: 1;
}
<span id="currencies">
<span data-currency="USD" class="selected left">USD</span>
<span data-currency="EUR" class="middle">EUR</span>
<span data-currency="CHF" class="right">CHF</span>
</span>
有没有人知道这方面的解决方案?
答案 0 :(得分:0)
将下面的-moz-inline-stack
放在另一个之上:
display: inline-block;
display: -moz-inline-stack;
一般浏览器上的 display: inline-block;
默认情况下会有效,而display: -moz-inline-stack;
则不会,因为他们无法识别这一点。虽然在Firefox中它会。
请记住:始终应用最后一种风格。
另外:我不明白为什么使用-moz-inline-stack
作为display: inline-block
适用于所有人。
答案 1 :(得分:0)
感谢masterpreenz我得到了正确的“方式”我在其他代码下面添加了与-moz相关的代码,但它仍然没有正确显示。我必须将-moz-inline-stack
更改为moz-inline-box
,然后才有效。
我实际上不明白为什么在我的情况下firefox没有正确显示display: inline-block;
,但是如果-moz-inline-box;
完成这项工作,我很高兴。