如何修复IE浏览器的背景大小:覆盖问题?(How to fix the IE's backg

2019-10-17 01:59发布

我已经寻找解决方案的网络,但是所有的人都在谈论如何设置整个页面的背景...但我需要填写页面的某个片段....我怎么能做到这一点?

下面是我们有.....本公司网页上,我们有几个不同的部分,并在其中的一个我需要设置图像的背景大小,以“盖”(这是我使用这个属性唯一的一次)。 这是我使用生成img标签的PHP函数:

function getRandomFeatureVideo()
{
// Youtube feed
$xml = simplexml_load_file('https://gdata.youtube.com/feeds/api/playlists/A4F160EDF82713A2?v=2');
.
.
.
.
$media = $entry->children('http://search.yahoo.com/mrss/');

  // get video player URL
  $attrs = $media->group->player->attributes();
  $watch = $attrs['url'];

  $attrs = $media->group->thumbnail[1]->attributes();
  $thumbnail = $attrs['url'];
  $counter++;

  if($counter == $rand)
    { break; }

  $result .='<a rel="prettyVideos"  href="'.$watch.'">
                <img alt="" style="background:url('.$thumbnail.')" src="/images/ytIndex_overlay.png" />
       </a> ';      

echo $result;                    
}

和CSS:

.slideshow .video img
{   
cursor:pointer;
width:550px !important;     
height:340px !important;     
background-repeat:no-repeat;    
background-size:cover;
-webkit-background-size: cover; 
-moz-background-size: cover; 
-o-background-size: cover;
-ms-interpolation-mode: bicubic;
}

到目前为止,它的工作正是我所期待的在Chrome,Safari浏览器,Firefox和Opera。

然而,由于通常情况下,它搞砸在IE(7/8)

我怎样才能解决这个问题?

Answer 1:

IE7不支持background-size以任何方式。 它只能显示图像在它的自然大小。

解决这个问题的唯一方法是,切换到使用<img>标记,以及层它元件后面,以便它看起来就好像它是背景。

你可以这样做,在你的代码; 它并不困难。 但是,这将是一种耻辱,浪费的存在background-size功能,在其他浏览器。

所以,我的首选解决方案是使用填充工具的Javascript,这将回填功能在旧版本的IE浏览器,让您可以继续使用标准的CSS。

你可以试试这个: https://github.com/louisremi/jquery.backgroundSize.js

希望帮助。



Answer 2:

我发现有类似的问题的人。 也许你可以检查此: Internet Explorer 7中的CSS背景大小的盖子



Answer 3:

我不得不放弃这个问题上其他的东西的工作,但认为应该给你们这个更新。 这个问题是(种)固定......不固溶体,但它正在与这个容易解决。

因此,这里是修改后的CSS ...

.slideshow .video img { cursor:pointer; width:550px !important;
height:340px !important; -moz-background-size:cover; -webkit-background-size: cover; -o-background-size: cover; background-size: cover; background-position:center;}

与IMG标记...

<img alt="" style="background:url('.$thumbnail.')" src="/images/ytIndex_overlay.png" style="background-repeat: no-repeat" style="background-size:cover"/>

(我知道这是乱了!)谢谢Spudley,Shadowizoo,BoltClock和Ben的时间和建议。



文章来源: How to fix the IE's background-size:cover issue?