我不知道为什么我设置的'background-image'在所有浏览器中都能正常工作,但它不适用于Iphone的safari浏览器(我需要的那个),
这是问题的相关风格
/**************************************************
ESTILOS PARA SINGLE JOB
**************************************************/
/*Deleting all styles that dont take any effect with the question*/
#panel.right ul.visible li a span.liLeft{
width:95px;
float:left;height:100%;display:block;
position:relative;
right:40px;
/*HERE I INIT THE STYLE OF THE BACKGROUND IMAGE BUT I DONT SET THE URL*/
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
z-index:10;
}
#panel.right ul.visible li a span.liRight{
background:black !important;
color:#fff;
}
#panel.right ul.visible li a span.liRight{
z-index:9;
}
#panel.right ul.visible li#blue a{
border-color:#0C7CC3;
}
#panel.right ul.visible li#pink a{
border-color:#C21B7B;
}
#panel.right ul.visible li#orange a{
border-color:#E83B35;
}
/* HERE i set the urls for the different Id's and i can't see them in the iphone */
#panel.right ul.visible li#blue a span.liLeft{
background-image:url('http://piscolabis.info/licht/img/azul.png');
}
#panel.right ul.visible li#pink a span.liLeft{
background-image:url(../img/rosa.png);
}
#panel.right ul.visible li#orange a span.liLeft{
background-image:url(../img/naranja.png);
}
/* deleting more styles*/
您可以在http://jsfiddle.net/6dK3T/2/或http://piscolabis.info/job_single.html
查看在线代码正如您所看到的,我只设置了一个完整的路径网址,这样您就可以看到图像在服务器中(以及任何桌面浏览器中),但我不知道为什么图像仍然没有显示在iPhone中< / p>
(它显示的与其他两个完全一样,我没有设置绝对路径(因为它们不在jsdfiddle中,它们不起作用))
是不是因为背景图片?是因为位置:相对?
知道为什么会这样吗?
- 编辑 -
应该是这样的
这不是一种谜吗?
答案 0 :(得分:6)
我设法通过稍微调整你的风格来让它在我的iPhone上显示:
#panel.right ul.visible li a span.liLeft{
width:95px;
float:left;
height:100%;
display:block;
position:relative;
margin-left: -40px;
margin-right: 40px;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
z-index:10;
}
#panel.right ul.visible li a span.liRight {
background:black !important;
float: left;
color:#fff;
}
OSX上的Safari问题与此相同。删除
right: 40px;
在图像开始显示的CSS中。
答案 1 :(得分:5)
我有一个类似的问题,图像是2200x2500px但只有130kb并且没有加载。 似乎智能手机和平板电脑不会加载超过1024px的图像。
因此,尝试为特定设备加载较小的图像,它应该可以正常工作。
编辑:我还删除了图像上的调整大小并显示了大图像。在我的情况下,我删除了background-size
(或将其放到auto
)。
答案 2 :(得分:1)
尝试为#panel.right ul.visible li a span.liLeft
元素提供准确的高度。
我修改了你的小提琴,添加了90px而不是100%,它似乎在我的iPhone上工作:
http://jsfiddle.net/UGEyS/
答案 3 :(得分:0)
你在iphone上加载相同的背景图片吗?这看起来像一个非常巨大的图像,所以它可能会以某种方式逃离视口?我没有要测试的iphone,这是一个黑暗中的镜头,但你可以尝试设置你的html符合浏览器视口大小与元标记,如下所示:
<meta name="viewport" content="width=device-width, initial-scale=1"/>
那或者您可以使用媒体查询来定位小于480px的视口以使用不同的较小背景图像。