我正在尝试设置FF上输入字段编号的上下按钮。我已经使用以下代码在chrome上成功实现了这一点,但我找不到任何CSS技巧来在FF上进行。
我不能用JS来做这件事。
是否可以在FF中使用CSS来上下调整样式?如果是这样的话? - 我只需要在最新版本上实现这个目标
DOM
<div class="productQty">
<span></span>
<input type="number" max="10" min="1" class="mod"/>
</div>
CSS
input[type="number"] {
height: 30px;
width: 60px;
font-size: 18px;
position: relative;
background-color: transparent;
border: none;
-moz-appearance: textfield;
}
.productQty span {
display: block;
width: 41px;
height: 30px;
background: white;
z-index: -1;
position: absolute;
top: 0;
left: 0;
bottom: 0;
border: solid 1px #999999;
}
/* Spin Buttons modified */
input[type="number"].mod::-webkit-outer-spin-button,
input[type="number"].mod::-webkit-inner-spin-button {
-webkit-appearance: none;
background: transparent url("../img/updown.png") no-repeat center center;
width: 16px;
height: 100%;
opacity: 1; /* shows Spin Buttons per default (Chrome >= 39) */
position: absolute;
top: 0;
right: 0;
bottom: 0;
}
input[type="number"].mod::-moz-inner-spin-button:hover,
input[type="number"].mod::-moz-inner-spin-button:active{
border: none;
}
/* Override browser form filling */
input:-webkit-autofill {
background: black;
color: red;
}
它如何看待Chrome以及它应该的样子
它在FF 38中的外观如何
答案 0 :(得分:0)
你不能直接将css应用到FF上的按钮,有关于它的bug报告: https://bugzilla.mozilla.org/show_bug.cgi?id=1108469
如果您不介意将某些css应用于包含元素,则可以使用:before
和:after
覆盖自定义按钮。
div:before, div:after {
display: block;
position: absolute;
width: 14px;
height: 8px;
line-height: 8px;
background-color: #ccc;
left: 136px;
z-index: 1;
font-size: 9px;
text-align: center;
pointer-events: none;
}
div:before {
content: "+";
top: 11px;
}
div:after {
content: "-";
top: 20px;
}
<div><input type="number" /></div>