0

我现在正在为一个问题苦苦挣扎,我终于设法弄清楚是什么原因造成的。

我一直在尝试在 CSS3 中创建一个漂亮的下拉菜单。我已经尝试了几件事,但由于某种原因,我从未让它在 Internet Explorer 中运行。我遵循教程,我基本上是从互联网上复制和粘贴下拉菜单,没有任何结果。

几分钟前(来自这篇文章)我没有在我的脚本中看到一个错误。我自己加载了我的下拉菜单(放在 navigation.html 中),并且下拉菜单有效(在任何浏览器中)。但是,它没有出现在我的主页 (index.php) 上。似乎包含页面(navigation.html)会导致问题(仅适用于 Internet Explorer)。所以我的问题是:是什么原因造成的?还有其他方法可以包含我的下拉菜单吗?

这是我的navigation.html的代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link href="includes/navigation.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="navigation">
<div id='cssmenu'>
<ul>
   <li class='active'><a href='#'><span>Home</span></a></li>
   <li class='has-sub'><a href='#'><span>Projects</span></a>
      <ul>
         <li><a href='#'><span>Windows Desktop</span></a></li>
      </ul>
   </li>
   <li><a href='#'><span>About</span></a></li>
   <li class='last'><a href='#'><span>Contact</span></a></li>
</ul>
</div>
</div>
</body>
</html> 

我在名为“ header.php ”的文件中包含了navigation.htmlHeader.php包含在index.php中

索引.php:

<?php
        include("includes/credits.html");
        include("includes/header.php");
        include("includes/border.php");
    ?>

头文件.php:

<div class="header" id="one">
<?php
    include("includes/navigation.html");
?></div>

提前致谢

编辑:解决 了我通过添加这个元标记来解决它:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

我刚刚在一篇文章中读到,如果您忘记“定义”它,这可能会导致 Internet Explorer 出现问题。

很抱歉浪费您的时间!

4

1 回答 1

0

我可以想象旧的 IE 有 CSS3 的问题,所以我可以推荐使用 jquery 代替。

HTML

<ul id="navigation">
    <li class="dropdown"><a href="#">Dropdown</a>
        <ul class="sub_navigation">
            <li><a href="#">Sub Navigation 1</a></li>
            <li><a href="#">Sub Navigation 2</a></li>
            <li><a href="#">Sub Navigation 3</a></li>
        </ul>
    </li>
    <li class="dropdown"><a href="#">Dropdown 2</a>
        <ul class="sub_navigation">
            <li><a href="#">Sub Navigation 1</a></li>
            <li><a href="#">Sub Navigation 2</a></li>
            <li><a href="#">Sub Navigation 3</a></li>
        </ul>
    </li>
</ul>

查询

$('.dropdown').hover(function() {
            $(this).find('.sub_navigation').stop(true, true).fadeToggle(600); 
    });

CSS

   ul {
        margin:0;
        padding:0;
        list-style-type:none;
        min-width:200px;
    }

    ul#navigation {
        float:left;
    }

    ul#navigation li {
        float:left;
        border:1px black solid;
        min-width:200px;
    }

    ul.sub_navigation {
        position:absolute;
        display:none;
    }

    ul.sub_navigation li {
        clear:both;
    }

    a,
    a:active,
    a:visited {
        display:block;
        padding:10px;
    }

http://jsfiddle.net/v5CsV/

于 2013-10-08T13:30:04.443 回答