Jquery 为什么我的背景图像没有显示在ie8中?

Jquery 为什么我的背景图像没有显示在ie8中?,jquery,css,internet-explorer-8,ie8-compatibility-mode,Jquery,Css,Internet Explorer 8,Ie8 Compatibility Mode,上周我为一家音乐公司完成了这个网站的编码: 它在ie10和chrome中就像一个魔咒,我正忙着向大家展示它,但当我切换到ie8时,我突然意识到我所有的背景图像都消失了 还有其他一些小问题,比如顶部菜单的文本对齐、“联系人”页面和WMU Slider Jquery插件上的分页,但是背景图像问题最困扰我 我使用的是css:'body{background:urlimg/yourmagehere;}'语法 这是我的html: <div class="header"> &l

上周我为一家音乐公司完成了这个网站的编码:

它在ie10和chrome中就像一个魔咒,我正忙着向大家展示它,但当我切换到ie8时,我突然意识到我所有的背景图像都消失了

还有其他一些小问题,比如顶部菜单的文本对齐、“联系人”页面和WMU Slider Jquery插件上的分页,但是背景图像问题最困扰我

我使用的是css:'body{background:urlimg/yourmagehere;}'语法

这是我的html:

<div class="header">

        <div class="container_16 clearfix">
            <ul class="nav grid_16 alpha">
                <li><a class="<?php if ($section == "Home") {echo "here"; } ?>" href="index.php" accesskey="1"> Home </a></li>
                <li><a class="<?php if ($section == "About Us") {echo "here"; } ?>" href="about_us.php" accesskey="2"> About </a></li>
                <li><a class="<?php if ($section == "What We Do") {echo "here"; } ?>" href="what_we_do.php" accesskey="3"> What We Do </a></li>
                <li><a class="<?php if ($section == "Enrolement") {echo "here" ; } ?>" href="enrolement.php" accesskey="4"> Enrolement </a></li>
                <li><a class="<?php if ($section == "Contact Us") {echo "here" ; } ?>" href="contact.php" accesskey="5"> Contact Us </a></li>
                <!--<li><a href="http://youngacademyblog.blogspot.co.uk/" accesskey="6"> Blog </a></li>-->
            </ul>


            <div id="logo">
                <a href="index.php"><img src="img/Logo original.gif" alt="The Young Academy"/></a>
            </div>
            <div class = "grid_4 alpha">

            <div class="telephone grid_4 alpha">
                <img src="img/phone_icon_white.png" alt="small telephone logo" class="align-left small" />
                <p> +44 (0)20 8866 3813 </P>
            </div>
            <div class="timezone">

                    <p><?php
                    date_default_timezone_set('Europe/London');
                    mktime(0,0,0,1,1,1970);
                    echo date('l, d F Y'); 
                    ?> </p>

                    <!--<form action="http://www.example.com/login.php">
                        <p>

                            <input type="text name=search" size="20+" id="search" value="Search this site"
                        </p>
                    </form>!-->



                </div>

            </div>


<ul class="secondmenu grid_6 push_3">

    <li><a class="<?php if ($section == "Musical Glossary") {echo "here" ; } ?>" href="glossary.php">Musical Glossary </a></li>
    <li><a class="<?php if ($section == "FAQ") {echo "here" ; } ?>" href="faq.php">FAQ</a></li>

<ul>                    
            </div> 

        <div class="container_16 clearfix">

            <div class="wmuSlider">
                <div class="wmuSliderWrapper"/>
等等

比较最简单的方法可能是在两个浏览器中查看站点,然后单击“查看源”

如果有人能帮忙,我将不胜感激

问候,


罗伯特

这很可能是因为你的CSS不完整。有些浏览器可以容忍这样的事情,但一般来说,更广泛的跨浏览器支持会更好,如果你有点冗长的话,也会避免出现奇怪的错误

而不仅仅是:

background: url("../img/soft_wallpaper.png");
让它:

background: #ffffff url("../img/soft_wallpaper.png") no-repeat left top;

这将告诉浏览器将背景放置在何处,并使其萎缩或不重复。它还提供了一个背景色回退,以防止图像不显示。

首先,删除这些引号,因为它们会在Safari中产生兼容性问题。 正如W3C所说:

出现在无引号URI中的某些字符,如括号, 必须使用空格字符、单引号和双引号 将使用反斜杠转义,以便生成的URI值为URI 令牌:

所以最好不要逃避这些引用,而是将它们从URL中删除

第二件事,再添加两个属性:

背景重复:无重复; 背景位置:左上


这两个属性将告诉它,如果图像的大小小于其容器,并且背景位置通常取2个值,则不要重复图像,水平对齐和垂直对齐,因此图像将从容器的左上角显示。

您的背景图像加载良好,但在IE正文中背景不可见,因为它被深蓝色覆盖。页眉div。这是因为IE由于缺少Doctype声明和标记错误。如果在更大的屏幕上加载或缩小站点,则可以看到背景图像


在“怪癖”模式下,.wmuSlider的内容强制.header展开,.header的高度被忽略。修复标记,问题就会消失。如果使用开发人员工具将IE文档模式切换为标准,则可以看到这一点。

未定义DOCTYPE。这可能不是问题所在,但是…你要知道,IE9也不起作用。我能看到样式的副本吗?css和style.css?谢谢-这是最接近的答案。这实际上是一个css问题-我在页面的部分而不是部分中包含了一些css内联样式和样式表。我现在已经改变了这一点,但我仍然有一个与PHP相关的问题-当包含PHP“头”文件时,如何为单个页面包含自定义内联样式和单个样式表?在PHP“头文件”和包含它的html文档中都可以有节吗?这里有一个选项:这里有另一个:
background: #ffffff url("../img/soft_wallpaper.png") no-repeat left top;