我正在处理一个小型网站导航问题,并且内容在 chrome、firefox 和 safari 中运行良好——但当然,IE 根本无法设置导航菜单的样式。
我创建了一个无序列表并在其上修改样式以使菜单水平。
这是该问题的直接链接:(链接已删除)。
无序列表就是这样出现的,IE 中的项目符号无序垂直 html 列表,而不是 chrome 中漂亮的导航菜单。
有什么建议吗?
我正在处理一个小型网站导航问题,并且内容在 chrome、firefox 和 safari 中运行良好——但当然,IE 根本无法设置导航菜单的样式。
我创建了一个无序列表并在其上修改样式以使菜单水平。
这是该问题的直接链接:(链接已删除)。
无序列表就是这样出现的,IE 中的项目符号无序垂直 html 列表,而不是 chrome 中漂亮的导航菜单。
有什么建议吗?
您使用<nav>
的是 HTML5 元素。旧的 IE 版本(8 和更低版本)无法识别它们并且不设置它们的样式。
要解决此问题,您需要使用HTML5shiv
. 按照该页面上的说明进行操作。
简而言之,HTML5shiv 会创建每个 HTML 元素,document.createElement
如果你这样做,IE 会识别它们。完整的故事:Paul Irish:HTML5 shiv 的历史
除了这个nav
问题(在这种情况下会阻止旧版本 IE 上的所有样式)之外,似乎还存在其他问题。
HTML 代码使用media
旧版本 IE 无法识别的属性,这意味着它们不应用任何 CSS 文件。快速修复是从引用 Large.cssmedia
的元素中删除属性。link
一个更好的解决方法是将大部分 CSS 规则收集到一个文件中,您可以使用具有(或没有属性)的link
元素引用该文件,以便依赖于媒体宽度的 CSS 文件仅包含您希望对不同宽度有所不同的那些设置。media=screen
media
IE 9 控制台包含 CSS3114 错误消息,表明@font-face
未通过 OpenType 嵌入的使用权限检查。
Medium.css and Small.css contain float: center
which is incorrect (center
is not an accepted value for float
). Use http://jigsaw.w3.org/css-validator/ to check your CSS code.
nav
用标签替换div
标签。似乎这里不需要更改 CSS 代码,因为您使用 引用元素#nav
,如果您更改为(当然也是),它可以<nav id="nav">
正常<div id="nav">
工作。</nav>
</div>