Php 使用CSS3背景尺寸封面。由于这使用了一个css url作为图像,是否可以在IE8或更早版本上全屏显示?

Php 使用CSS3背景尺寸封面。由于这使用了一个css url作为图像,是否可以在IE8或更早版本上全屏显示?,php,javascript,jquery,wordpress,internet-explorer,Php,Javascript,Jquery,Wordpress,Internet Explorer,我使用css3来获得一个漂亮的全屏背景图像 body{ background: url(<?php echo $background_image; ?>) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } body{ 背景

我使用css3来获得一个漂亮的全屏背景图像

body{ 
  background: url(<?php echo $background_image; ?>) no-repeat center center fixed; 
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
body{
背景:url()无重复中心固定;
-webkit背景尺寸:封面;
-moz背景尺寸:封面;
-o-背景尺寸:封面;
背景尺寸:封面;
}
当然,IE8及以上的人不打球,看起来很糟糕。有没有简单的方法让它在IE8上工作

我看了一下,这叫做使用:

<script type="text/javascript">
  $.anystretch(<?php echo $background_image; ?>, {speed: 150});
</script>

$.anystretch(,{speed:150});
但是,即使它可以工作,我也无法使它只在IE8浏览器中加载。使用anystretch,浏览器将加载图像两次(一次在css中,一次用于anystretch创建的html)

有人有什么简单的方法可以做到这一点吗?

没有,没有“简单”的方法。大多数人只是为较旧的浏览器选择另一种背景,例如带有repeat-x的渐变图像

但即使它能工作,我也无法做到,所以它只能在IE8中加载 浏览器

这将仅在IE 8浏览器中加载:

<!--[if IE 8]>
<script type="text/javascript">
  $.anystretch(<?php echo $background_image; ?>, {speed: 150});
</script>
<![endif]-->

或者,如果您希望将其加载到IE 8及更低版本:

<!--[if lt IE 9]>
<script type="text/javascript">
  $.anystretch(<?php echo $background_image; ?>, {speed: 150});
</script>
<![endif]-->

您可以这样做

background:url("image.png")no-repeat;
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="image.png",sizingMethod=scale);
-ms-filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="image.png",sizingMethod=scale);

这取决于你想要的黑客攻击程度。你可以将css放在媒体查询中,这样它就不会加载到IE8或更早版本中(因为它们不支持媒体查询)。然后在javascript周围放置条件注释,专门针对IE8或更早版本(如Alex W所示)。这样,您只允许IE8或更早版本使用anyStretch功能,并避免为这些浏览器加载两次图像。

您是否签出了此网站。它涵盖了不同的技术,可用于不支持CSS3属性(如
背景大小
)的浏览器。它既有仅CSS的方法,也有jQuery辅助的方法方法


仅CSS技术#2涵盖了IE8+回退

我可能最终会这样做。我唯一的问题是我想使用ccs3,因为它是最优雅和简单的解决方案,然后为垃圾浏览器(ie)添加某种回退。你可以做到这一点,使用CSS3和IE回退,你是什么意思?IE过滤器对我不起作用,它们会使图像严重拉伸。非ccs3需要单独将CSS3放入样式表(例如style.css)中,并将回退css放入样式表(例如old.css)中,然后像这样调用
这将针对IE8和更低版本