【问题标题】:How to remove gloss effect on safari mobile如何在 Safari 手机上消除光泽效果
【发布时间】:2013-05-11 16:37:59
【问题描述】:

我注意到 safari for mobiles 中选择控件的颜色有问题。

提到了像this question 这样的光泽。

不幸的是,该解决方案还删除了右侧的小箭头。

除了-webkit-appearance:none; 之外,还有其他方法可以仅覆盖颜色吗?

谢谢

【问题讨论】:

  • 你试过-webkit-appearance:caret;吗? (shauninman.com/archive/2010/04/22/…)
  • 已经试过了,没有运气:(
  • 那你可以试试这个:stackoverflow.com/questions/15623389/… 好像不能在保留箭头的同时删除样式,所以你必须自己做一个。
  • 我试图避免这种解决方案。你能把这个写成答案,如果没有其他办法,我可以接受。谢谢

标签: html css mobile-safari


【解决方案1】:

据推测,-webkit-appearance:caret; 应该已经去除了光泽。但似乎在选择中不起作用。

因此,我能找到的唯一方法是 Florija's answer,它通过 CSS 伪造选择箭头。

HTML:

<select name="state_select" id="state_select" class="choose_state" size="1">
    <option>Hey</option>
</select>
<div class="dblarrow"><b></b><i></i></div>

CSS:

.dblarrow {
    margin-left: -35px;
    display: inline-block;
}

.dblarrow b {
    width: 0; 
    height: 0; 
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid black;
    display: block;
    margin-bottom: 3px;
}

.dblarrow i {
    width: 0; 
    height: 0; 
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid black;
    display: block;
}

select.choose_state,
select.choose_state option {
    background: transparent;
}
select.choose_state {
    border: 1px solid #000;
    -webkit-appearance: none;
    -webkit-border-radius: 0px;
    outline: none;
    margin-right: 15px;
    font-size: 1.4em;
    padding-right: 20px; /*Important*/
    display: inline-block; /*Important*/
}

看看他的笔:http://codepen.io/loredonut/pen/xvtHG

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-31
    • 1970-01-01
    • 2012-07-15
    • 2011-11-30
    • 1970-01-01
    相关资源
    最近更新 更多