图片库在IE9中不显示- Joomla龙门4


Photogallery not showing in IE9 - Joomla Gantry 4

这是我的网站图片库的url:http://www.mythrottle.net/community/gallery/678-jeets/photo?albumid=135& photoid = 846

我正在努力找出为什么照片库在IE9或IE10中不显示。它适用于Chrome和Firefox。我在谷歌上搜索了一天,发现这个问题只出现在Gantry 4模板上。使用默认模板时没有问题。似乎是Gantry less.css编译器搞砸了。我的网站是使用Rocktheme Alerion和Tigra的Jomsocial造型。任何人请帮助解决这个问题。

由于某种原因,可能是由于在Gantry的东西,宽度和高度被设置为IE9的0px

在你的模板文件夹中,应该有一个CSS文件,很可能叫做ie.css.

如果没有,创建一个新的CSS文件,并添加以下代码:

.photoDisplay img {
     left: 175px; 
     top: 120px; 
     width: auto; 
     height: auto;
}
然后在模板文件夹中的index.php中,在<head>中添加以下代码:
<!--[if IE 9]>
        <?php  
            $doc = JFactory::getDocument();
            $doc->addStyleSheet(JURI::root() . "templates/rt_alerion/css/custom.css");
        ?>
<![endif]-->

显然要将路径更改为保存css文件的位置。

希望能有所帮助

只是@Lodder对解决方案的长评论:它将不工作与页面缓存打开,

$doc->addStyleSheet

将CSS添加到一个列表中,该列表稍后将被插入到调用jdoc include头的模板中;

如果你想使用条件注释(如果你计划使用缓存,你应该这样做),你应该直接输出标记。

但是由于IE10不允许这样(再一次在ms的好家伙试图让我们的生活更容易),客户端解决方案,如modernizr.js或我如何只针对Internet Explorer 10的某些情况,如Internet Explorer特定的CSS或Internet Explorer特定的JavaScript代码?会有效果的。我们的想法是在html或body标签中添加一个带有浏览器名称的类,这样您就可以在单个样式表中用

作为浏览器特定规则的前缀来定位它。
html.ie9 div.main...

所以你可以缓存一个页面并为所有人服务,用javascript触发自定义行为。此外,这将节省您的IE9和10一个额外的下载。这是一件很好的事情,因为他们已经不得不处理IE了。

还可以查看示例http://h5bp.com,因为它展示了浏览器兼容性领域的几个巧妙技巧,包括使用chromeframe。