CSS3 下拉菜单在包含时在 IE 中不起作用


CSS3 dropdown menu doesn't work in IE when included

我正在为一个问题苦苦挣扎一段时间,我终于设法找出导致它的原因。

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

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

这是我的导航代码.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> 

我将导航.html包含在名为">header.php"的文件中。标头.php包含在索引中.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带来问题。

很抱歉浪费您的时间!

我可以想象较旧的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/