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

时间:2013-10-08 13:08:57

标签: php html css css3 drop-down-menu

我现在正在努力解决一个问题,我终于找到了导致它的原因。

我一直在尝试在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> 

我将 navigation.html 包含在名为“ header.php ”的文件中。 Header.php 包含在 index.php

的index.php:

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

的header.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出现问题。

抱歉浪费你的时间!

1 个答案:

答案 0 :(得分: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>

<强> JQUERY

$('.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/