HTML选择下拉菜单在android webview中不起作用

Posted

技术标签:

【中文标题】HTML选择下拉菜单在android webview中不起作用【英文标题】:HTML Select dropdowns are not working in android webview 【发布时间】:2016-07-03 07:23:53 【问题描述】:

浏览器用户代理版本:

"Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_2_1 like Mac OS X; en-us) AppleWebKit/533.17.9 (Khtml, like Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5"

基本的 HTML 代码

<!DOCTYPE html>
<html>
    <head>
        <title>Test Pages</title>
        <meta name="format-detection" content="telephone=no">
        <meta name="msapplication-tap-highlight" content="no">
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
    </head>
    <body>
        <div>
            <select>
                <option>One</option>
                <option>two</option>
                <option>three</option>
                <option>four</option>
                <option>five</option>
            </select>
        </div>
    </body>
</html>

这似乎适用于 UIWebView(iPhone) 和本机浏览器。只有 android webView 有问题。任何帮助将不胜感激。webview 是一个 Cordova 活动

【问题讨论】:

请发布您尝试在 Android WebView 中加载此 html 的代码。 @Bijeshp009 你能详细说明问题是什么吗? 请访问此答案,它可能会对您有所帮助 ***.com/a/43497233/3086769 我知道这是旧的,但this 回答为我解决了这个问题。 基本上,确保将活动作为上下文传递给 WebView 构造函数。 caniuse.com/mdn-html_elements_select 问题已解决。 :) 【参考方案1】:

@mattstow 来自here的回答

Android 浏览器对&lt;select&gt;s 的渲染存在错误,如果应用了背景或边框,则会删除正常样式。

由于&lt;select&gt;s 看起来不像&lt;select&gt;s 是一个相当大的可用性问题,因此最好不要仅为此浏览器设置样式。

不幸的是,没有纯 CSS 方式来选择/排除 Android 浏览器,所以我建议你使用 Layout Engine (https://github.com/stowball/Layout-Engine),它会在 &lt;html&gt; 标签中添加一个 .browser-android 类。

然后,您可以为所有&lt;select&gt;s 设置样式,除了在 Android 浏览器上,如下所示:

html:not(.browser-android) select 
    background: #0f0;
    border: 1px solid #ff0;

【讨论】:

这个解决方案似乎与问题无关。 @Bijeshp009 说选择不起作用。在 Android 上删除样式是否修复了选择?

以上是关于HTML选择下拉菜单在android webview中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

android studio 的下拉菜单Spinner使用详解

Android 快速设置磁贴下拉菜单

无法在Python应用程序中选择下拉菜单

自定义Spinner下拉菜单(下拉列表框)样式

HTML / JS 下拉菜单按钮不会放在 Android Studio WebView 中

像在 ICS 中一样在 android 2.x 中创建下拉菜单的最佳方法