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)
我有同样的问题,直到现在我想知道为什么会发生这种情况,因为它不会发生在其他一些项目中。
在尝试了解有关 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)
类似这样的事情可能会在不久后重新计算,因为当时 android 上孩子的outerHeight是错误的(正如我之前提到的)。
window.setTimeout(function() {$(window).trigger('resize');}, 1500);
...可能有用吗?是的,这似乎有帮助。
显然,您只想在初始加载阶段过去后触发一次(这是规范的明显错误,所有其他当前都遵守该规范)。
归档时间: |
|
查看次数: |
28878 次 |
最近记录: |