该设计
响应式设计上的联系表单具有带有嵌入阴影和常规外部阴影的输入字段。见下图。
编码
input {
background:#fff;
height:auto;
padding:8px 8px 7px;
width:100%;
box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
border:#fff solid 3px;
border-radius:4px;
box-shadow:0px 0px 5px rgba(0, 0, 0, .25), inset 2px 2px 3px rgba(0, 0, 0, .2);
}
问题
iOS v4+ 不能正确显示 box-shadow。见下图。
经过测试
我尝试使用-webkit-box-shadow。
-webkit-box-shadow:0px 0px 5px rgba(0, 0, 0, .25),
inset 2px 2px 3px rgba(0, 0, 0, .2);
我已应用于display:block;
输入元素。
当前的解决方法
我宁愿不必这样做,但这是获得所需效果的唯一方法。
HTML
<p><input /></p>
CSS
p {
width:50%;
box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-shadow:0px 0px 5px rgba(0, 0, 0, .35);
border-radius:4px;
}
input {
background:#fff;
height:auto;
padding:8px 8px 7px;
width:100%;
box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
border:#fff solid 3px;
border-radius:4px;
box-shadow:inset 2px 2px 3px rgba(0, 0, 0, .2);
}
即使使用这种解决方法,iOS 上的嵌入阴影也无法正确呈现;但它足够接近。
我的问题
是否可以在 iOS 设备上正确渲染单个元素上的多个 box-shadow 实例?如果不是,那么嵌入的阴影呢?还是我错误地使用了这个属性及其值?
提前致谢!