在用css写一个下拉菜单的时候,在FF下测试没问题,但在IE下,始终显示不出来,检查代码,发现是手写的HTML,没有加上声明标记:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
这是一个申明,申明此网页遵循W3C所制定的DTD规则。W3C是一个万维网联盟,主要作用是规范各种制作网站所用的工具,比如HTML,CSS,JAVASCRIPT等等。 而DTD只是W3C对网页的HTML文件规范的一种。 W3C没有对HTML文件的解析做标准之前,各种浏览器对同一个网页文件的解析千差万别。为了避免这样的事,W3C就提出了规范。
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。 该标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。
附上下拉菜单代码:
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html>
- <head>
- <style type="text/css">
- #menus * { margin:0; padding:0; }
- #menus { border:1px solid #999999; float:left; }
- #menus ul { float:left;}
- #menus li { list-style-type:none; float:left; border-right:1px solid #999999; position:relative; }
- #menus li .nav2{ display:none; position:absolute; left:-1px; width:70px; border:1px solid #999999; }
- #menus li:hover .nav2 { display:block; }
- #menus a { text-align:center; width:70px; height:30px; text-decoration:none; line-height:30px; display:block; background-color:#DDD;}
- #menus a:hover { color:#CCC; background-color:#666; }
- </style>
- </head>
- <body>
- <div id="menus">
- <ul>
- <li>
- <a href="#">新闻</a>
- <ul class="nav2">
- <li><a href="#">国际</a></li>
- <li><a href="#">国内</a></li>
- </ul>
- </li>
- <li style="border:0px;">
- <a href="#">网页</a>
- <ul class="nav2">
- <li><a href="#">教育</a></li>
- <li><a href="#">医疗</a></li>
- </ul>
- </li>
- </ul>
- </div>
- </body>
- </html>