当使用背景颜色设置时,HTML选择框不显示Android 4.0版本上的下拉箭头

May*_*aaj 22 html javascript css webkit cordova

我需要将选择框的背景颜色设置为黄色.当我测试时,它确实在android 2.3和android 3.0上显示带有黄色和箭头的框.

但是在android 4.0上,它显示选择为完全黄色而没有下拉箭头.

知道如何解决这个问题吗?

我正在设计这个与电话差距.

这是我的代码,我为html选择设置背景颜色.

<select style="background-color:#FFFF00;border:#FFFF00;height:25px;font-family:Arial, Helvetica, sans-serif; color:#000000; font-size:14px; font-weight:bold; text-align:center;">
          <option></option>
          <option>1</option>
          <option>2</option>
          <option>3</option>
          <option>4</option>
          <option>5</option>

        </select>
Run Code Online (Sandbox Code Playgroud)

Mat*_*tow 18

Android浏览器的<select>s 渲染是错误的,如果应用背景或边框,将删除正常样式.

由于<select>s看起来不像<select>s是一个非常大的可用性问题,所以最好的办法是不为这个浏览器设置样式.

不幸的是,有选择/排除的Android浏览器中没有纯粹的CSS方法,所以我建议你使用布局引擎(https://github.com/stowball/Layout-Engine),这将一类添加.browser-android<html>标签.

然后你可以<select>在Android浏览器上设置所有s 样式,如下所示:

html:not(.browser-android) select {
    background: #0f0;
    border: 1px solid #ff0;
}
Run Code Online (Sandbox Code Playgroud)


Lea*_*ing 5

我有同样的问题,直到现在我想知道为什么会发生这种情况,因为它不会发生在其他一些项目中。

在尝试了解有关 Bootstrap 和 Foundation Framework 的更多信息时,我在 bootstrap 上找到了解决方案,因为如果我们提到下拉菜单的边框或背景,它们会在某些移动设备上提出此问题。

我没有从任何人那里获得荣誉,但想分享提到它的页面链接,并且还给出了解决方案

引导程序:https : //getbootstrap.com/docs/4.0/getting-started/browsers-devices/#select-menu

JS 斌:http : //jsbin.com/OyaqoDO/2

我希望这对可能面临此问题的其他人有用,此解决方案与引导程序有关。& 我可以根据您的项目需要进行修改吗?

<script>
var nua = navigator.userAgent;
var is_android = ((nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1) && !(nua.indexOf('Chrome') > -1));
if(is_android) {
        $('select.form-control').removeClass('form-control').css('width', '100%');

}
</script>
Run Code Online (Sandbox Code Playgroud)


Mis*_*ord 0

类似这样的事情可能会在不久后重新计算,因为当时 android 上孩子的outerHeight是错误的(正如我之前提到的)。

window.setTimeout(function() {$(window).trigger('resize');}, 1500);

...可能有用吗?是的,这似乎有帮助。

显然,您只想在初始加载阶段过去后触发一次(这是规范的明显错误,所有其他当前都遵守该规范)。