HTML5shiv在IE8上无法正常运行

时间:2013-11-21 08:56:50

标签: asp.net iis html5shiv

我尝试使用HTML5shiv(从谷歌下载)将我的菜单格式化为水平菜单!问题是当我使用localhost调用我的网站时,菜单工作正常。但是当我使用ip调用我的网站(例如192.168.1.1/menu.aspx)时,菜单格式不正确。显然我需要能够使用ip而不是localhost来调用网站,原因很明显:)

第一张图片是我想要的。第二个是它出现的。 Correct Menu Incorrect Menu

  <%@ page Language="VB" CodeFile="test_menu.aspx.vb" Inherits="ddd" %>
     <!DOCTYPE html>
     <html xmlns="http://www.w3.org/1999/xhtml">
      <head runat="server">
     <meta lang="th" charset="windows-874" />
      <!--[if lte IE 9]>
     <script src="/CSS/html5_2.js"></script>
     <![endif]-->
     <title></title>
    <style type="text/css">

        nav{font-family:Arial, Helvetica, sans-serif; font-size:12px; margin-left:30px;border-radius:5px; width:90%;margin-right: 0px;
        }
     nav ul{ margin:0px; padding:0px;} 
     nav ul li{list-style-type:none; display:inline-block;  margin:0 0 0 -3px}
     nav ul li a{ display:block; color:#FFFFFF;text-decoration:none; text-     transform:uppercase; padding:10px 25px;  background:#2429E8; border-right:solid 1px #fff;text-wrap:none;}
     nav ul li:hover>a{ background:#49A3FF}
     nav ul li:first-child a{border-radius:5px 0 0 5px;text-wrap:none;}
     nav ul li:last-child a{border-radius:0 5px 5px 0;}
/*...First-Level...*/
     nav ul li ul li:first-child a{border-top:solid 5px #fff;text-wrap:none;}
     nav ul li ul li:last-ch`enter code here`ild a{border-bottom:solid 5px #fff;text-wrap:none;}
     nav ul li ul{position:absolute; display:none; /*width:340px;*/ margin:0;text-wrap:none;white-space:nowrap}
nav ul li:hover ul{display:block;text-wrap:none;white-space:nowrap;}
nav ul li ul li{display:block; position:relative; border:none;text-wrap:none;}
nav ul li ul li a{ border-bottom:solid 1px #f4f4f4; border-right:5px solid #fff; border-left:5px solid #fff; border-radius:0px!important; background:#2429E8;  margin:0px; padding:5px; text-wrap:none;}

/*...Second-Level...*/
nav ul li:hover ul ul{display:none}
nav ul li ul li:hover>ul{display:block}
/*...Third-Level...*/
nav ul li ul li ul{display:none; background:#2429E8; position:absolute; top:-10%; left:145px; width:140px;}

        .auto-style1 {
            width: 90%;
            border: 1px solid #c0c0c0;
        }
    </style>

</head>
<body> 
    <form id="form1" runat="server">
        <table class="auto-style1">
           <tr>
                <td><nav>
    <ul>
      <li><a href="/">Home</a></li>
      <li><a href="#">Treaty</a>
        <ul>
          <li><a href="#">Create New Treaty</a></li>
          <li><a href="#">Add Reinsurer to Treaty</a></li>
          <li><a href="#">Change Treaty</a></li>
          <li><a href="#">Change Reinsurer to Treaty</a></li>
        </ul></li>
      <li><a href="#">Faculatative</a></li>
      </ul>
  </nav>    
                </td>
                <td>

    </td>
            </tr>
        </table>
    <div>
        <br /><br />

    </div>
    </form>
</body>
</html>

我正在使用.net 4,IIS7在windows7和IE8上运行。关键是为什么在使用“localhost”时使用IP不起作用

1 个答案:

答案 0 :(得分:1)

从图像中,这似乎是浏览器特定的问题,而不是HTML5shiv问题。

请检查您的IE8正在运行Document Mode。如果是IE8则会出现其他错误。 如果它不是IE8,请将此meta标记添加为<head>标记的第一个元素。

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />