最近在开发app内嵌h5页面的时候,在ios端遇见了一个兼容性问题,特此记录一下分享给大家。
当input输入框设置disabled属性后,输入框内文本在ios端看不到。
表现如下:
第一个箭头,也就是靠上的箭头,是 input 的 placeholder 设置的文字颜色正常。第二个箭头是设置了 disabled 属性的 input框。 不知道大家能不能看出来,其实文本是存在的,但是非常难看出来有文字,几乎看不到,本来字体颜色应该和上面的 placeholder 一致的。
经过一番查阅后发现。
在ios里面,设置了disabled 属性的input框 字体颜色会改变,且 opacity 的值会被设置为 0.3
所以导致了文字几乎看不到。我们采取兼容性写法和强制修改一下。
input[disabled],input:disabled,input.disabled {
color: #9fa2ac!important;
-webkit-text-fill-color: #9fa2ac;
-webkit-opacity: 1;
opacity: 1;
}
通过上面的代码,问题就被解决啦~