首先介绍一下HTML文档与CSS 的关联常见有4种方式:
1、使用link标记 www.goodsgy.com
<link rel="stylesheet" type="text/css" href="sheet.css" /> www.goodsgy.com
2、使用style元素 www.goodsgy.com
<style type="text/css"> www.goodsgy.com
body{background:#fff;} www.goodsgy.com
h1{font-size:12px;} www.goodsgy.com
</style> www.goodsgy.com
3、使用@import指令 www.goodsgy.com
<style type="text/css"> www.goodsgy.com
@import url(sheet1.css); www.goodsgy.com
@import "sheet2.css"; www.goodsgy.com
</style> www.goodsgy.com
4、使用style属性的内联样式(inline style) www.goodsgy.com
<p style="color:#f00;">这是红色的字</p> www.goodsgy.com
在实际应用中,使用style属性的内联样式是不推荐使用的,XHTML1.1已经将其标准为不建议使用,原因很简单这种方式不比font标记强多少,削弱了CSS集中控制整个文档外观的优点。 www.goodsgy.com
前3种方式利用了link标记和style标记,在IE(包括IE6、IE7和IE8 beta1)中有如下限制: www.goodsgy.com
◆ 文档中只有前31个link或style标记关联的CSS能够应用。 www.goodsgy.com
从第32个开始,其标记关联的CSS都将失效。IE的官方文档All style tags after the first 30 style tags on an HTML page are not applied in Internet Explorer也提及这个限制,包括在使用.xsl的.xml文件也有这个限制。但是似乎写错了数量。请在IE看: www.goodsgy.com
◆ 一个style标记只有前31次@import指令有效应用。 www.goodsgy.com
从第32个@import指令开始忽略。 www.goodsgy.com
◆ 一个css文件只有前31次@import指令有效应用。 www.goodsgy.com
从第31个@import指令开始忽略。 www.goodsgy.com
◆ 一个CSS文件的不能超过288kb? www.goodsgy.com
IE对CSS的限制在绝大部分情况下是不会遇到的,即使遇到最佳的解决方案也应该是手动或者通过后端程序对CSS文件和响应的标记进行合并,最小化的http请求数是优化页面呈现的第一原则。 www.goodsgy.com