输入在焦点上有不同的风格

时间:2011-04-15 18:43:15

标签: android css webview cordova

我正在开发一款带有Phonegap的Android应用,但我遇到了一个问题......输入在焦点上有不同的背景,边框和阴影(见下文)。应该注意,这仅适用于输入类型“密码”。

我该如何解决这个问题?提前谢谢!

3 个答案:

答案 0 :(得分:3)

Android-WebKit-Browser似乎在焦点上添加了一个特殊的覆盖框到输入类型“密码”(我认为应用这个特殊的移动掩码,其中最后一个字母仍然可见),忽略了所有样式,除了“ -webkit-tap-highlight-color“财产。

因此,这些输入框的样式将会失败。顺便说一句。输入框的样式在使用HTC Sense的设备上根本不起作用,请看这里:

Input-Elements in WebViews always have the same style if highlighted on HTC Devices

哦,有一个例外:样式似乎适用于三星设备(至少在Galaxy S和I5800上)

答案 1 :(得分:1)

我们在HTC设备上遇到了一个问题,只要在动画上显示表单,CSS3过渡就会显示“双密码”框。

基本上Android创建的叠加层将绘制在屏幕的底部,而不管实际的HTML表单标记的呈现位置。

每次输入密码字段时,Android都会更新这两个框。看起来很可怕。它通常在输入字段失去焦点后消失......通常。

由于尝试强制样式不起作用,我们必须确保将-webkit-backface-visibility设置为''(而不是'hidden')。每当输入形式如图所示。

答案 2 :(得分:0)

您应该可以通过定位该输入并添加:focus来应用其他样式。例如:

input[type=password]:focus { border-radius: 5px; }

假设输入的密码类型为圆角。然后只需从其他输入中复制其余样式以匹配。