网站首页  注册会员  本站免费电影 留言板  繁體中文

 

您现在的位置: 陈鹏个人网站 >> 电脑应用 >> 网络应用 >> 网页制作 >> 正文
 

|
闂傚倸鍊搁崐鎼佸磹閻戣姤鍊块柨鏇楀亾妞ゎ亜鍟村畷褰掝敋閸涱垰鏁搁梻渚€鈧偛鑻晶鎵磼鏉堛劌娴鐐存崌楠炴帒鈹戦崼婵囧€梺璇叉唉椤煤濡厧鍨濋柟鎹愵嚙缁犲湱鎲搁悧鍫濅刊闁轰礁鍟撮弻銊モ攽閸℃ê娅f繝纰樺墲婵炲﹤顫忕紒妯诲闁告稑锕ラ崕鎾绘⒑閸濄儱娅忛柛瀣工閻g兘骞囬妯规睏闂佸湱鍎ら崹鑸垫綇閸儲顥婃い鎰╁灪婢跺嫰鏌熸搴㈠殌闁宠棄顦垫慨鈧柍鈺佸暞閻濇娊姊绘担铏广€婇柛鎾寸箞閹兘濡烽埡浣哄幈閻庡厜鍋撻柛鏇ㄥ厴閹锋椽姊婚崒姘卞缂佸甯¢弫宥夊籍閸喓鍘甸梺鍛婂灟閸婃牜鈧熬鎷�
|
缂傚倸鍊搁崐鎼佸磹閻戣姤鍤勯柛顐f礃閹偤骞栧ǎ顒€濡奸柣顓燁殜楠炴牕菐椤掆偓婵¤偐绱掗埀顒勫磼濞戞氨顔曢梺鐟邦嚟閸婃垵顫濈捄鍝勫殤闁瑰吋鐣崝宥夋偂韫囨稓鍙撻柛銉亽閸儱纾婚柟鎯х-閺嗭箓鏌涢妷銏℃珖鐎规挷绶氬濠氬磼濞嗘埈妲梺姹囧€曞ú銈夈€呮總绋课╅柍鍝勫€稿▓鎴︽⒑閸撴彃浜濇繛鍙夌墵瀹曞綊宕掗悙瀵稿弳闂佺粯娲栭崐鍦偓姘炬嫹
|
濠电姷鏁告慨鐑藉极閹间礁纾绘繛鎴欏灪閸嬨倝鏌曟繛褍鎳庨弳妤呮⒑缁嬭法鐏遍柛瀣〒缁牓宕橀鐣屽帗闂佸憡绻傜€氼剟鍩€椤掍焦鍊愮€规洘绮撻、妤呭礋椤戣姤瀚奸梺鑽ゅТ濞测晝浜稿▎鎾崇闁革富鍘剧壕濂告煠绾板崬澧伴悽顖涚〒缁辨帡寮崒姘亪閻庤娲栭妶鍛婁繆閻戣棄唯鐟滃繐鐣烽崼鏇熲拻濞达綀濮ょ涵鍫曟煕閿濆繒鐣垫鐐茬箻閺佹捇鏁撻敓锟�
|
闂傚倸鍊搁崐椋庣矆娓氣偓楠炴牠顢曚綅閸ヮ剚鐒肩€广儱鎳愰敍鐔兼⒑閸︻厼顣兼繝銏★耿瀹曞綊宕掑☉鏍︾盎闂佸搫绉查崝宀勬倿瑜版帗鐓涢悗锝庝邯閸欏嫰鏌$仦鐐缂佺姵绋掔换婵嬪礃閵婏妇褰撮梻鍌欒兌鏋い鎴濇楠炴劙骞栨担鍝ュ弨婵犮垼娉涢敃锕傚汲閿曞倹鐓曢柕澶堝灪濞呭棙绻涢崼鐔搞仢婵﹨娅i幏鐘诲箵閹烘繂濡烽梻浣虹帛濡繘宕滈悢鑲╁祦闊洦绋掗弲鎼佹煥閻曞倹瀚�
|
缂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮闁汇値鍠楅妵鍕冀椤愵澀绮堕梺鎼炲妼閸婂潡寮诲☉銏℃櫆閻犲洦褰冪粻褰掓⒑閹肩偛濡界紒璇茬墦瀵濡堕崶鈺冪厯闁荤姵浜介崝瀣垝閻㈠憡鈷戠紒瀣閹癸綁鏌涢悩宕囧⒌鐎殿喖顭烽弫鎾绘偐閼碱剦妲伴梻渚€娼ф灙闁稿寒鍣e畷鎴﹀箻楠炲じ姹楅梺鍦劋閸ㄨ埖娼忛崼銉︹拺閻犳亽鍔屽▍鎰版煙閸戙倖瀚�
|
IT闂傚倸鍊搁崐鎼佸磹妞嬪海鐭嗗〒姘e亾妤犵偞鐗犻、鏇㈡晝閳ь剛澹曡ぐ鎺撶厽闁硅揪绲鹃ˉ澶岀棯椤撴稑浜鹃梻鍌欑閹诧繝宕濋弴鐐嶇喐绻濋崒妯峰亾閹烘挾绡€婵﹩鍘鹃崣鍡涙⒑缂佹ɑ绀€闁稿﹤婀遍埀顒佺啲閹凤拷
|
闂傚倸鍊搁崐椋庣矆娴i潻鑰块梺顒€绉撮崒銊ф喐閺冨牆绠栨繛宸簻鎯熼梺闈涱樈閸犳绱炴惔銏㈢瘈闁汇垽娼ф牎闂佺厧缍婄粻鏍ь嚕閸涘﹦鐟归柍褜鍓熷濠氬即閵忕娀鍞跺┑鐘茬仛閸旀牜鐟х紓鍌氬€烽懗鑸靛垔椤撱垹闂柨婵嗩槸閽冪喓鈧箍鍎遍悧婊冾瀶閵娾晜鈷戦柛娑橈攻鐏忎即鏌i悢鍙夋珚闁靛棔绀侀埢搴ㄥ箳閺冨倹婢戞繝鐢靛仦閸ㄥ爼鎮烽敃鈧埢宥夊閵堝棌鎷洪柣鐘充航閸斿苯鈻嶉幇鐗堢厵闁告垯鍊栫€氾拷
|
闂傚倸鍊搁崐鎼佸磹閻戣姤鍊块柨鏇楀亾妞ゎ亜鍟村畷褰掝敋閸涱垰鏁搁梻渚€鈧偛鑻晶鎵磼鏉堛劌娴鐐存崌楠炴帒鈹戦崼婵囧€梺璇叉唉椤煤濡厧鍨濈€光偓閸曨剙浠奸梺缁樺灱濡嫰鎮欐繝鍥ㄧ厓闁告繂瀚弸锔剧磼鏉堫偄鐨虹紒杈ㄦ崌瀹曟帒顫濋钘変壕闁归棿鐒﹂崑瀣叓閸ャ劍鈷愰柛娆忕箻閺岋綁濮€閳惰泛缍婇幆灞轿旈崨顔惧弳闂佺粯娲栭崐鍦偓姘炬嫹
|
闂傚倸鍊搁崐宄懊归崶褏鏆﹂柣銏⑶圭粣妤呮煙閹殿喖顣奸柛瀣剁節閺屾洘寰勯崼婵嗗濠电偞鍨惰彜闁衡偓娴犲鍊甸柨婵嗗暙婵$兘鏌涚€n偅宕岀€规洘甯¢幃娆撳蓟閵夈儲鏆梻鍌欑閹碱偄煤閵娾晛纾婚柣鎰劋閸婂灚銇勯幒鍡椾壕闂佸疇顫夐崹鍧楀箖濞嗘挸鐭楀鑸瞪戦敍渚€姊绘担瑙勫仩闁告柨閰e畷浼村冀瑜滈崵鏇炩攽閻樺磭顣查柡鍛倐閺屻劑鎮ら崒娑橆伓
|
   
专 题 栏 目
 婵犵數濮烽弫鍛婃叏閻戣棄鏋侀柟闂寸绾剧粯绻涢幋鐐垫噧缂佸墎鍋ら弻娑㈠Ψ椤旂厧顫╃紓浣插亾闁割偆鍠撶弧鈧梻鍌氱墛缁嬫帡鏁嶉弮鍫熺厾闁哄娉曟禒銏ゆ婢舵劖鐓ユ繝闈涙閸f椽鎮归幇銊ュ⒉闁靛洤瀚伴崺锟犲礃閵娿儱绠i梻浣筋嚃閸犳盯锝炴径鎰闁告稒娼欐导鐘绘煏婢舵ê鐏g紒鈧繝鍕=闁稿本鐟чˇ锔姐亜閿旇鐏﹂柟顔矫埞鎴犫偓锝庝簽閸欌偓濠电姰鍨奸崺鏍礉閺囩姷涓嶅┑鐘崇閸婂灚绻涢幋鐑嗕痪妞ゅ繐妫楅ˉ姘舵煕閹邦剚鈻曟繛鎾愁煼閺屾洟宕煎┑鍫㈩唺闁诲簼绲婚崑鎰閹烘鏁婇柣锝呮湰閸Q冾渻閵堝棙绌跨紓宥勭閻g兘骞囬悧鍫濅簻闂佹儳绻楅~澶婎熆閹达附鈷掑ù锝呮啞閹牊绻涚仦鍌氬鐎规洑鍗抽獮妯肩磼濡桨绮ч梻浣芥硶閸o箓骞忛敓锟�
相 关 文 章

再次提速 Firefox和IE提
让Windows 7系统桌面也有
一周酷软回顾 IE8功能有
从性能到功能 傲游IE8正
英文 IE7 安装及使用过程
欧盟回应Win7不绑定IE决
华尔街日报:IE8功能丰富
TechCrunch:IE8忽略1/3
华盛顿邮报 IE8虽有进步
Windows IE 8 简体中文正

 
IE对网页中引入CSS样式表的限制           
IE对网页中引入CSS样式表的限制
作者:陈鹏 文章来源:eNet 点击数:107 更新时间:2009-9-12 9:12:09
 




 

首先介绍一下HTML文档与CSS 的关联常见有4种方式:

  1、使用link标记

  <link rel="stylesheet" type="text/css" href="sheet.css" />

  2、使用style元素

  <style type="text/css">

  body{background:#fff;}

  h1{font-size:2em;}

  </style>

  3、使用@import指令

  <style type="text/css">

  @import url(sheet1.css);

  @import "sheet2.css";

  </style>

  4、使用style属性的内联样式(inline style)

  <p style="color:#f00;">这是红色的字</p>

  在实际应用中,使用style属性的内联样式是不推荐使用的,XHTML1.1已经将其标准为不建议使用,原因很简单这种方式不比font标记强多少,削弱了CSS集中控制整个文档外观的优点。

  前3种方式利用了link标记和style标记,在IE(包括IE6、IE7和IE8 beta1)中有如下限制:

  ◆ 文档中只有前31个link或style标记关联的CSS能够应用。

  从第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看:

  ◆ 一个style标记只有前31次@import指令有效应用。

  从第32个@import指令开始忽略。

  ◆ 一个css文件只有前31次@import指令有效应用。

  从第31个@import指令开始忽略。

  ◆ 一个CSS文件的不能超过288kb?

  这个消息来自Internet Explorer CSS File Size Limit。

  IE对CSS的限制在绝大部分情况下是不会遇到的,即使遇到最佳的解决方案也应该是手动或者通过后端程序对CSS文件和响应的标记进行合并,最小化的http请求数是优化页面呈现的第一原则。

热门推荐 WinXP系统安全实用技巧大合集 瑞星杀毒2008半年免费

  在IE中,可以通过document.styleSheets对象(Firefox、Opera9和Safari3.1都支持)修改内联和嵌入样式的值。该对象仅在文档包含style或link元素时可用,其实用document.styleSheets.length就可以看出IE下这个值最大是31。下面是利用Javascript来合并link和style标记来解决IE下的限制:

var fnMergeStyleSheet = function(){
if(!document.styleSheets){
return;
}
var aSheet = document.styleSheets,
aStyle = document.getElementsByTagName('style'),
aLink = document.getElementsByTagName('link');
if(aStyle.length + aLink.length < 32    !aSheet[0].cssText){
//document.styleSheets.cssText只有IE支持
return;
}
var aCssText = [],aCloneLink = [];

//把style标签中的样式存入,然后删掉该标签,但保留第一个
//因为由getElementsByTagName方法返回值是nodeList,所以删除时循环用倒序
for(var i=aStyle.length-1;i>-1;–i){
var o = aStyle[i];
aCssText.push(o.innerHTML);
if(i>0){
o.parentNode.removeChild(o);
}
}
//在IE中只有在31之内的link标签才能通过其styleSheet.cssText获取样式
//无法的获取复制到一个数组aCloneLink中
for(var i=aLink.length-1;i>-1;–i){
var o = aLink[i];
if(o.getAttribute && o.getAttribute(’rel’)===’stylesheet’){
if(o.styleSheet){
aCssText.push(o.styleSheet.cssText);
}else{
aCloneLink.push(o.cloneNode(true));
}
if(i>0){
o.parentNode.removeChild(o);
}
}
}
var oHead = document.getElementsByTagName(’head’)[0];
//通过前面的删除,前31个link或者style标记最多只剩下2个
//通过重新增加link节点的方法激活其styleSheet属性,从而获取样式
for(var i = aCloneLink.length-1;i>-1;–i){
var o = aCloneLink[i];
oHead.appendChild(o);
aCssText.push(o.styleSheet.cssText);
oHead.removeChild(o);
}
//把所有的样式都复制给第一个标签
aSheet[0].cssText += aCssText.join(”);
}

  上面仅仅是一个简单的粗糙的解决方案,可以改进的地方还有:

  1、没有考虑media这个属性,如果有多个media应该分别合并,当然更没有考虑link标记的rel="alternate stylesheet"带来的影响。但我更建议通过@media指令把相应的样式写在同一个文件中,至少可以减少HTTP连接数。

  2、没有解决@import指令31次限制的问题,其实可以提取其href值然后进行激活处理。但是实际应用在建议用link标记来替代@import指令,应为在IE中@import指令相当与把link标记写在文档的底部。

  3、一般来讲页面之所有出现大量的link或者style标签很可能有很多是相同的,可以在aCssText合并前除掉相同的项,减少代码量。

  
热门推荐 WinXP系统安全实用技巧大合集 瑞星杀毒2008半年免费


【责任编辑 王凡】

文章录入:陈鹏    责任编辑:陈鹏 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     
     
     
     
     

    Copyright © 2007 - 2009 chenpeng123.com All Rights Reserved
    本站所有文章,软件等均来自网络收集,不代表本站观点,仅供学习和研究使用。如有侵犯您的版权,请联系我们,本站将立即删除。
    鲁ICP备07014697号
    你是本站第 位访客
    51La