仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 575|回复: 8
打印 上一主题 下一主题

[DIV+CSS] 来一发优化扫瞄器衬着:制止CSS expressions

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-15 23:21:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
所有的设计第一步就是构思,构思好了。
网页制造poluoluo文章简介:CSS表达式会下降扫瞄器的衬着功能;用其他计划交换它们将会改良IE扫瞄器的衬着功能。
概述
CSS表达式会下降扫瞄器的衬着功能;用其他计划交换它们将会改良IE扫瞄器的衬着功能。
注重:本节最好理论只合用于InternetExplorer5到7,它们撑持CSS表达式。InternetExplorer8保持利用CSS表达式,而其他扫瞄器是不撑持的。
具体信息
作为一种静态改动文档属性来呼应各类事务的的手腕,InternetExplorer5引进了CSS表达式或“静态属性”。它们由在CSS声明中的CSS属性值里嵌进JavaScript表达式组成。在年夜多半情形下,它们用于以下目标:
摹拟其他扫瞄器撑持但IE扫瞄器还没有撑持的尺度CSS属性。
利用比编写周全JavaScript注进式款式更玲珑,更便利的办法,来供应静态款式和初级的事务处置。
不幸的是,CSS表达式关于功能的不良影响是相称年夜的,由于每当有事务触发,扫瞄器都要从头盘算每一个表达式,如一个窗口改动巨细,鼠标挪动等。CSS表达式的低功能体现是IE8弃用它们的缘故原由之一。假如你在网页里利用CSS表达式,应当尽统统勉力来打消它们而且利用其他办法来到达一样的功效。
倡议
尽量利用尺度的CSS属性。
IE8已高度兼容尺度CSS;IE8只要在“兼容”形式才撑持运转CSS表达式,而在“尺度”形式下则不撑持。假如你不必要向后兼容旧版本的IE,你应当转换成尺度的CSS属性来交换一切对应的CSS表达式。如需CSS属性和撑持它们的IE版本的完全列表,请拜见MSDN的CSS属性索引。假如你的确必要撑持所需CSS属性不成用的旧版本IE扫瞄器,请利用JavaScript来完成等效的功效。
利用JavaScript剧本款式。
假如你正在利用CSS表达式来完成静态款式,用纯JavaScript重写它们是很成心义的,由于如许既能进步IE功能,同时在其他扫瞄器取得不异效果的撑持。在这个由MSDN静态属性页供应的例子里,上面的CSS表达式用于在扫瞄器里居中一个HTML块元素,而且该元素的尺寸能够在运转时改动,每次调剂窗口巨细都能从头定位在扫瞄器中央:
  1. <divid="oDiv"style="background-color:#CFCFCF;position:absolute;left:expression(document.body.clientWidth/2-oDiv.offsetWidth/2);top:expression(document.body.clientHeight/2-oDiv.offsetHeight/2)">ExampleDIV</div>
复制代码
上面是一个利用JavaScript和尺度CSS的等价例子:
  1. <style>#oDiv{position:absolute;background-color:#CFCFCF;}</style><scripttype="text/javascript">//Checkforbrowsersupportofeventhandlingcapabilityif(window.addEventListener){window.addEventListener("load",centerDiv,false);window.addEventListener("resize",centerDiv,false);}elseif(window.attachEvent){window.attachEvent("onload",centerDiv);window.attachEvent("onresize",centerDiv);}else{window.onload=centerDiv;window.resize=centerDiv;}functioncenterDiv(){varmyDiv=document.getElementById("oDiv");varmyBody=document.body;varbodyWidth=myBody.offsetWidth;//NeededforFirefox,whichdoesntsupportoffsetHeightvarbodyHeight;if(myBody.scrollHeight)bodyHeight=myBody.scrollHeight;elsebodyHeight=myBody.offsetHeight;vardivWidth=myDiv.offsetWidth;if(myDiv.scrollHeight)vardivHeight=myDiv.scrollHeight;elsevardivHeight=myDiv.offsetHeight;myDiv.style.top=(bodyHeight-divHeight)/2;myDiv.style.left=(bodyWidth-divWidth)/2;}</script>
复制代码
假如您利用CSS表达式来摹拟初期IE版本中不成用的CSS属性,你应当供应版本测试的javascript代码,为撑持CSS的扫瞄器克制CSS表达式。举例来讲,max-width属性,这个属性在必定数目的像素局限内强迫文本换行,在IE7前是不撑持的。上面的CSS表达式作为一种办理办法,为IE5和6供应了这个功效:
  1. p{width:expression(document.body.clientWidth>600?"600px":"auto");}
复制代码
为不撑持此属性的IE扫瞄器版本利用等价的JavaScript交换CSS表达式,可使用相似于上面的内容:
  1. <style>p{max-width:300px;}</style><scripttype="text/javascript">if((navigator.appName=="MicrosoftInternetExplorer")&&(parseInt(navigator.appVersion)<7))window.attachEvent("onresize",setMaxWidth);functionsetMaxWidth(){varparagraphs=document.getElementsByTagName("p");for(vari=0;i<paragraphs.length;i++)paragraphs[i].style.width=(document.body.clientWidth>300?"300px":"auto");</script>
复制代码
</p>
另外如果你不是javascrput的高手,你可以不必去写ID,只用class就可以。当客户端程序员写完程序,需要调整时候,你可以在利用他的ID进行控制。
蒙在股里 该用户已被删除
沙发
发表于 2015-1-17 22:10:16 | 只看该作者
滚动条)层属性--溢出(visible/hidden/scroll/auto)
活着的死人 该用户已被删除
板凳
发表于 2015-1-22 21:19:31 | 只看该作者
还是在Dreamweaver所见即所得添加链接是,可以选中文字或图片然后按下shift键不放鼠标拖出箭头直接指向文件即可。这是比较简单的也是常用的方之一。
小女巫 该用户已被删除
地板
发表于 2015-1-31 14:25:38 | 只看该作者
这个过程其实就是交流的过程。所有的这些都需要花时间。在面对完全陌生的软件时,就要多花时间对其产生初步的印象。此外,多操作也是非常重要的。
老尸 该用户已被删除
5#
 楼主| 发表于 2015-2-6 20:20:52 | 只看该作者
俗话说:兴趣是最好的老师。做每一件事都离不开兴趣的驱动。兴趣是自学技术需要迈出的第一步。在学习的过程中,我们难免会遇到各种各样的问题。
因胸联盟 该用户已被删除
6#
发表于 2015-2-18 15:23:37 | 只看该作者
这个过程其实就是交流的过程。所有的这些都需要花时间。在面对完全陌生的软件时,就要多花时间对其产生初步的印象。此外,多操作也是非常重要的。
若天明 该用户已被删除
7#
发表于 2015-3-6 08:45:26 | 只看该作者
使用内容管理系统进行开发并实现快速、精确的浏览器兼容性测试。
金色的骷髅 该用户已被删除
8#
发表于 2015-3-13 00:07:17 | 只看该作者
时间轴)窗口--时间轴--选中图层并拖图层到时间轴,将其放在指定帧上
透明 该用户已被删除
9#
发表于 2015-3-20 07:13:36 | 只看该作者
您在所见即所得网页编辑器进行网页制作和在WORD中进行文本编辑不会感到有什么区别,但它同时也存在着致命的弱点。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-18 09:55

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表