??xml version="1.0" encoding="utf-8" standalone="yes"?>99精品国产福利在线观看免费,天堂综合网久久,国产欧美欧美 http://www.aygfsteel.com/jayexx/zh-cn Wed, 18 Jun 2025 19:00:44 GMT Wed, 18 Jun 2025 19:00:44 GMT 60 FireFoxQ火狐)与IE兼容问题全解?? http://www.aygfsteel.com/jayexx/archive/2011/08/04/355729.html木木?/dc:creator>木木?/author>Thu, 04 Aug 2011 02:04:00 GMT http://www.aygfsteel.com/jayexx/archive/2011/08/04/355729.html http://www.aygfsteel.com/jayexx/comments/355729.html http://www.aygfsteel.com/jayexx/archive/2011/08/04/355729.html#Feedback 0 http://www.aygfsteel.com/jayexx/comments/commentRss/355729.html http://www.aygfsteel.com/jayexx/services/trackbacks/355729.html 打开一看,哇哈Q终于来了,ff好多不兼容的问题来了。随便点M下不兼容的问题就有上十个了。一个个慢慢解决Q慢慢搜索。。。。。。。先把几个简单的整理分n一下?br />1.最单的鼠标U过手变型的css要改?cursor:pointer; dw8下面自动出来的也没有handq个属性了Q标准的是pointer 2.ff不支持o?最常见的半透明不支持?br />filter: Alpha(Opacity=50); opacity: .5; style="-moz-opacity:0.5; filter:alpha(opacity=50);cursor:hand;" onmouseover="this.style.MozOpacity=1; this.filters.alpha.opacity=100" onmouseout="this.style.MozOpacity=0.5; this.filters.alpha.opacity=50" 3.ff不支持expression 例如L链接的边框要分别写不同的css a,area { blr:expression_r(this.onFocus=this.blur()) } :focus { outline: none; } 4.ff不支持div滚动条的颜色讄Q目前还没有扑ֈ替换的好Ҏ?br />.contendiv { position: absolute; left: 0px; top: 10px; width: 580px;height: 135px; line-height:120%;text-align:left; font-family:"宋体";word-break : break-all; color:#6D6E71; OVERFLOW-Y:auto;OVERFLOW-X:no; SCROLLBAR-ARROW-COLOR: red; SCROLLBAR-TRACK-COLOR: F6F6F6;SCROLLBAR-FACE-COLOR:#F6F6F6;SCROLLBAR-SHADOW-COLOR:#F6F6F6; SCROLLBAR-DARKSHADOW-COLOR:#F6F6F6;SCROLLBAR-3DLIGHT-COLOR:#F6F6F6;SCROLLBAR-HIGHLIGHT-COLOR:#F6F6F6; } q个在ff里面完全没有效果了?br />5.ie下面昄在文字下面横U的border-width: 0px 0px 1px 0px;在ff里面跑到文字上面M。(查了手册q是没有扑ֈ解决的办法感觉莫名奇妙~?原来是ff的容错能力太差了Q是下面的width: 186px;height: 0px;宽高引v的,其实a:haver已经l承了上U的属性了Q只要定义不同的样式可以了Q看来ff有助于制作标准化Q简z化的网啊Q对css的理解也更深刻,Ҏ供css来说是个很好的帮助) .onelinksdiv a:hover { display: block;border-style: solid;color: #ff0000;border-width: 0px 0px 1px 0px; } //下面的写法在ie下面正常Q但在ff下是错误?br />.onelinksdiv a:hover { display: block;border: #ff0000 solid; border-width: 0px 0px 1px 0px; width: 186px;height: 0px; color: #ff0000; font-size: 14px;text-align: right; } 相关参考资料: border-width:border-top-width border-right-width border-bottom-width border-left-width; p#fourborders { border-width:thick medium thin 12px; } 如果定义四个?那么q四个值就分别是上,??左边框的宽度?从上Ҏ开?以逆时针的序遍历). {h于下面的定义 p#fourborders { border-top-width:thick; border-right-width:medium; border-bottom-width:thin; border-left-width:12px; } 6.ff不支?lt;body scroll="no" > scroll属性,必须定义overflow:hidden;而且要在html标签下,不能在body?br />html{ overflow:hidden; } 7.ff不支持数据岛l定<xml id="news" src="news.xml" ></xml>在ie下可以加载进数据Q但C火狐加载不q数据了Q开始以为可能是因ؓ内容行文字太多导致不能断行不能加载,但删除只剩几个字以后一样不行?br />8.style="word-break:break-all"在网中的单元格里的内容出一行时,在ie览器里定义的换行样式能够正怋? 但在firefox里却不能被支持了.style="word-break:break-all" 是MS扩展的IE专有属性,q未成ؓW3C标准Q因?Firefox q不能支持它。不qMS已经其提交CW3CQ而在W3C的CSS3的候选方案中也能看到它。希望这个属性在被W3C最l定案的为CSS3标准后, Firefox可以支持吧。这之前Q可以试?br />style="table-layout:fixed;word-wrap: break-word" Q当它是英文的时候就不能正常换行了) 9.目前FF2.0为止都不支持IE的name锚点 像这U写法都是不支持的:<a href="###" onclick="history.go(-1)">go back</a> 原来ҎW3C的语法,<a>标签始终都会查找href地址q蟩转过去,现在onclick事g?##q个地址又有冲突?br />Z?Firefox与IE部分元素属性兼容,那个费劲Q我无意中发现Firefox对空格敏感: <a onclick="window.location.href ='faq.php?page=messages#2'"> //有空|锚点作用 <a onclick="window.location.href='faq.php?page=messages#2'"> //无空|锚点无作?br />锚点的写法又十分讲究Q比?lt;a name=#1>QFirefox不支持锚点,得加上id=#1 静态同面引用时必这样写Q?lt;a href="#1"></a>Q?lt;a href="static.html#1"></a>׃行,动态页面要用JS 后遗症来了,考虑到鼠标样式和览器兼容又开始折腾: <a href="###" onclick=""> //不兼?br /><a href="javascript:;" onclick=""> //不兼?br /><a href="javascript:function();"> //没有{...},属于脚本的非法书?br /><a style="cursor:hand" onclick=""> //没照ֈ自定义系l鼠标样式的用户 <a href="javascript:onclick=''"> //状态栏会显玎ͼhref有多长显C多?br /><a href=# onclick=""> //我用?br />10.ff火狐下面不支持document.all属性的Q必需?document.getElementByIdx_x('idName'); 以下是我的动d换效果,在ie下正常,C火狐里面׃动了Q修改后可以切换囄但渐隐渐现的效果没有了。原因是火狐不支持o镜filter,只好用半透明的div来实C?br /> function playcompanyimg() { window.setInterval('changecompanyimg();', interval); } function changecompanyimg() { //if (document.all) //{ number = Math.floor(Math.random() * image.length); idtemp.src=image[number]; //alert(number+" ii "+idtemp.src) //alert(do_transition); //document.all.companyimg.style.filter="progid:DXImageTransform.Microsoft.Fade(duration=2,overlap=0.4)"; var companyimgidtmep = document.getElementByIdx_x('companyimg'); companyimgidtmep.style.filter="progid:DXImageTransform.Microsoft.Fade(duration=1,overlap=1)"; companyimgidtmep.filters[0].Apply(); companyimgidtmep.filters[0].Play(); //} } 参考资料:核心QFILTER:revealTrans(duration=1,transition=23); 一个IE滤镜Q?br />在其它的非IE览器虽然不支持q个滤镜Q但是支持透明滤镜的,你可以分一下,IE下l用你q个效果Q而在非IE览器下用透明滤镜Q?br />style.opacity opacity = 0.5 CSS3 style.MozOpacity -moz-opacity: 0.5 Mozilla 里等同上面这个o?q个滤镜也适用于Netscape style.KHTMLOpacity -khtml-opacity: 0.5 Safari 里的透明滤镜?br />IEQ?br />obj.filters.alpha.opacity to meizz(梅花? 其实我想q你那个问题的。但是透明 opacity q个他不是一个渐变的q程?br />一般这U图片过度特效最多持l一U把Q最多最多两U?duration=2 过2U就很篏赘,喧宾Z了?br />?U钟里面实现 g_img.style.filter="alpha(opacity="+i+")" 透明度的变化是比较篏赘的事情?br />要用 window.setInterval 改变 i 的| 而且q要调用几十上百ơwindow.setInterval 才能看到效果?br />q样的话Q我觉得得不赔失Q是ZҎ而特效了 另外一U考虑是,毕竟非ie览器是数Q即使在ff?没有囄q度ҎQ其实也没什么, q是很流畅,不过是看不到ie里面的美而已?br />11.ff 下链接的onclick事g不v作用 <div id="bigwhatwedo" ><a href="javascript:onclick = display('whatwedo')" target="">我们做什?lt;/a></div> 在ie下没有问题,在ff下点M没有反应。作了多ơ尝试,换成onclick="display('whatwedo')"仍然不行Q后来通过多次查,搜烦仍然找不到门路,最后采用惯用的ҎQ-一步一步alert();出来看效果,原来他妈的是一个id的值写错了Q但奇怪的是ie下面没有关系Q是 ie的容错内容太Zq是火狐的容错内容太差了Q不q还是喜Ƣ火狐的严}和标准哈。可以让人发C深层次的东ѝ哈哈?br />12.ff中div 定位不能通过js初始?必须先设定值ƈ且要讑֮度量单位 top:80px;left:212px; 13.ff不能?click();Ҏ打开链接Q终于暂时性的解决?br /><div><a href="#" onclick="test1(2)" id="a3_a">hello</a> </div> <div> <a href="" onclick ="test2(1)" id="b3">hello2</a></div> <div><a href="javascript:onclick =test2(1)" id="b3">hello3</a>触发事g攑֜href="javascript:onclick =test2(1)" 里面ff无效</div> <div onclick="test2(1)" id="b3">hello3</div> <script language="javascript"> <!-- function test1(num) { window.alert(num); } function test2(num) { var aaa_a = document.getElementByIdx_x("a3_a"); if(document.all) {//if(getOs()=="MSIE"){//IE的处?br />aaa_a.click(); } else { var evt = document.createEvent("MouseEvents"); evt.initEvent("click",true,true); aaa_a.dispatchEvent(evt); } } function getOs() { var OsObject = ""; if(navigator.userAgent.indexOf("MSIE")>0) { return "MSIE"; } if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ return "Firefox"; } if(isSafari=navigator.userAgent.indexOf("Safari")>0) { return "Safari"; } if(isCamino=navigator.userAgent.indexOf("Camino")>0){ return "Camino"; } if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){ return "Gecko"; } } //--> </script> <!-- ׃q里的链接是index的iframe用href="#" 在ie中无法正常显C, 而用 href="javascript:onclick = display('whatwedo')"的方式火狐不支持打开W一个链接,火狐必须用onclick="display('whoweare')" 本以为火狐浏览器使用的h很多Q但从网站的l计分析来看火狐只有可怜的3.18%Q但兼容他的标准花费不精力!不过标准化有利于以后的维护和扩展Q有利于技术的不断提示?br />--> 14.OVERFLOW-Y:auto;OVERFLOW-X:hidden;在ie里面可以用no 表示隐藏Q但在ff里面必须用hidden Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q-Q?br />ȝ一下:目前有十个不兼容问题Q还没解决的有: 4.ff不支持div滚动条的颜色讄Q目前还没有扑ֈ替换的好ҎQ在许多标准化的|站看到也是没有解决q个问题?br />7.ff 不支持数据岛l定<xml id="news" src="news.xml" ></xml>在ie下可以加载进数据Q但C火狐加载不q数据了Q开始以为可能是因ؓ内容行文字太多导致不能断行不能加载,但删除只剩几个字以后一样不行。用w3c代码Y件检了一下,原来是自定义的xml标签通不q,所以火狐就不认了?br />10.火狐不支持o?filterQ无法实现图片切换中间变换的效果Q只能通过透明度来讄Q但很麻?Q这个目前暂不实CQ?/p> ]]> CSS在IE览与Firefox间最常见的不兼容性问?/title> http://www.aygfsteel.com/jayexx/archive/2011/08/04/355728.html木木?/dc:creator>木木?/author>Thu, 04 Aug 2011 02:03:00 GMT http://www.aygfsteel.com/jayexx/archive/2011/08/04/355728.html http://www.aygfsteel.com/jayexx/comments/355728.html http://www.aygfsteel.com/jayexx/archive/2011/08/04/355728.html#Feedback 0 http://www.aygfsteel.com/jayexx/comments/commentRss/355728.html http://www.aygfsteel.com/jayexx/services/trackbacks/355728.html DOCTYPE 影响 CSS 处理 FF: div 讄 margin-left, margin-right ?auto 时已l居? IE 不行 FF: body 讄 text-align ? div 需要设|?margin: auto(主要?margin-left,margin-right) 方可居中 FF: 讄 padding ? div 会增?height ?width, ?IE 不会, 故需要用 !important 多设一?height ?width FF: 支持 !important, IE 则忽? 可用 !important ?FF 特别讄样式 div 的垂直居中问? vertical-align:middle; 行距增加到和整个DIV一样高 line-height:200px; 然后插入文字Q就垂直居中了。缺Ҏ要控制内容不要换?br /> cursor: pointer 可以同时?IE FF 中显C, hand ?IE 可以 FF: 链接加边框和背景Ԍ需讄 display: block, 同时讄 float: left 保证不换?br />参照 menubar, l?a ?menubar 讄高度是ؓ了避免底ҎC错? 若不?height, 可以?menubar 中插入一个空?br /> q里只考虑 IE5.5+ 的情况,有些教程q在讨论 IE5 的兼Ҏ,我觉得就没有什么必要了 1、整个块在面居中寚w IE览器:先设?body 的样式ؓ text-align: center; 然后指定区块的样?margin: auto ; text-align: left ; FF览器:指定区块的样?margin: auto ; 卛_ 2、?XHTML 1.0 Transitional 标准Ӟ width ?height 不兼?br />FF览器:?!important width: width + padding + border; 如: div.test { border:25px solid; background: #ffc; padding:25px; width:400px; width:300px !important; } IE是不能识?nbsp; width:300px !important; 的,但在 Firefox 中能识别Q从而达C者兼容的目的?br />如果q个元素讑֮了float属性,q可以用一个更单的办法使之兼容 加上 display:inline; xQ?br />div.test { border:25px solid; background: #ffc; padding:25px; width:400px; float:left; display:inline; } 注意Q在没有指定 float 的时候?display:inline; 在FF中是无效的?br /> 3、hand 指针图标属?br />FF是不能识?cursor: hand; 的,可以?nbsp; cursor: pointer Q这样两个浏览器都能识别?br />4、脚本引入的书写方式 q里讨论的主要是 XHTML 1.0 标准Q据说在 1.1 中,脚本引入必须写成 <script type="text/javascript"> Z兼容Q可以写?br /><script language="text/javascript" type="text/javascript"> 因ؓ按XML的标准,多一个无关的属性是不媄响解析的Q但能达C者兼容的目的?br />5、嵌套DIVQ父DIV的高度不能根据子DIV自动变化的解x?br />IE 览器对于多重DIV嵌套自适应高度是非常理想的Q不用百分比q是固定值父DIV都会Ҏ子DIV变化而变化,但在FF览{,子DIV如果比父 DIV高则会越q父DIVQ从而媄响M排版Q必L定父ID为float,然后通过在子DIV后加一个clear的DIV来解冻I如: <div id="parent" style="float:left"> <div id="content"></div> </div> <div style="clear: both;"></div> 寚w度的解析 IEQ将Ҏ内容的高度变化,包括未定义高度的囄内容Q即使定义了高度Q当内容过高度Ӟ用实际高?br />FirefoxQ没有定义高度时Q如果内容中包括了图片内容,MF的高度解析是Ҏ印刷标准Q这样就会造成和实际内定w度不W合的情况;当定义了高度Q但是内容超q高度时Q内容会出定义的高度,但是区域使用的样式不会变化,造成样式错位?br />l论Q大家在可以定内容高度的情况下最好定义高度,如果真的没有办法定义高度Q最好不用用边框样式,否则样式肯定会出现乱! img对象alt和title的解?br />altQ当照片不存在或者load错误时的提示Q?br />titleQ照片的tip说明?br />在IE中如果没有定义titleQalt也可以作为img的tip使用Q但是在MF中,两者完全按照标准中的定义?br /> l论Q大家在定义img对象Ӟ最后将alt和title对象都写全,保证在各U浏览器中都能正怋?br /> 其他的细节差?br />当你在写css的时候,特别是用float: leftQ或rightQ排列一H图片时Q会发现在firefox里面正常而IE里面有问题。无Z用margin:0,q是border: 0来约束,都无于事?br /> 其实q里q有另外一个问题,是IE对于I格的处理,firefox是忽略的而IE对于块与块之间的I格是处理的。也是说一个divl束后要紧接着一个div写,中间不要有回车或者空根{不然也怼有问题,比如3px的偏差,而且q个原因很难发现?br /> 非常不走q的是我又碰Cq样的问题,多个img标签q着Q然后定义的float: leftQ希望这些图片可以连h。但是结果在firefox里面正常而IE里面昄的每个img都相隔了3px。我把标{之间的I格都删除都没有作用?br /> 后来的解x法是在img外面套liQƈ且对li定义margin: 0Q这样就解决了IE和firefox的显C偏差。IE对于一些模型的解释会生很多错误问题,只有多多试才能发现原因?br /> 2、嵌套DIV:父DIV的高度不能根据子DIV自动变化的解x?br /><div id="parent"> <div id="content"> </div> </div> 当Content内容多时Q即使parent讄了高?00%或auto,在不同浏览器下还是不能完好的自动伸展?解决Ҏ <div id="parent"> <div id="content"></div> <div style="font: 0px/0px sans-serif;clear: both;display: block"> </div> </div> 在层的最下方产生一个高度ؓ1的空|可解除这个问?br /> 3、CSS DIV 学习W记 一、基本上每个区块的div 都要有自qidQ杜l不同功能的区块用同一个id/class 二、每个稍大的区块div 后面都跟一?lt;!-- /id -->标记开始、结?br /> 三、隐藏文字的又一U方?TEXT-INDENT: -9999px; LINE-HEIGHT: 0 四、y妙地处理q列的两? 1) 叛_为P, width=44.5%, float=left 左列为P.first, border-right: #a7a7a7 1px solid, width=45% 2) 叛_#right, margin-left:50% 左列#left, float=left,width=50% border-right:#a7a7a7 1px solid 以上两种Ҏ关键点在于选择其中一个ؓfloat=left 五、随机的切换囄Q?br />#random { BACKGROUND: url(/rotate.php); } q个Ҏ很y妙?br /> 4、关于div的高度自适应 今天尿让我帮他的页子解决一个问题,是div的高度自适应Q也是在一个父Udiv中嵌套一左一右两个子divQ右边的子div内容可无限扩展,而可以得父Udiv的高度能被无限拉长,用一般的布局ҎQ在IE中可以正浏览,在Mozilla中父U?div的高度就固定?0px左右Q无法自适应高度Qheight:auto也不行,怎么办呢。网上参考到一资料,要实现自适应高度Qdiv层必d?float属性,于是我开始动手试验,float:left的话Qdivp到页面最左边MQ这好办Q我在它的外面再套一层divQ把位置定好Q那么里面的qfloat:left也不会被Ud位置了?br /> xhtml: ========================================================== <div id="container_father"> <div id="container"> <div id="panel"> test<br /> test<br /> test<br /> <!-- id="panel" --> </div> <div id="sidebar"> <ul> <li class="current">预安装检?lt;/li> <li>阅读 PFC 授权协议</li> <li>初始化数据库</li> <li>完成安装</li> </ul> <!-- id="sidebar" --> </div> <!-- id="container" --> </div> </div> CSS ================================================= #container_father { margin-left: auto; margin-right: auto; padding: 0px; width: 750px; } #container { width: 750px; border: 1px solid #cccccc; padding: 8px; margin: 0px; background-color: #F1F3F5; float: left; } FRom: http://ulean.zg163.net/ 5?深入标准 ~ The IE Doubled Float-Margin Bug(IE双倍Q动边界Bug) 什么发生故障? 一D|错的代码把一个居左Q?float:left)的元素放|进一个容器盒(box)Qƈ在Q动元素上使用了左边界(margin-left) 来o它和容器的左边生一D距R看h相当的简单,对吗Q但直至它被在IE/Win中浏览ؓ止,在浏览器中居左Q动元素的边界长度被神U地M一倍! 情况应该如何Q?br /> 下面的图释展CZ一个简单的div(茶色的盒?包含着一个居左Q动的div(l色的盒?。Q动元素有一?00px的左边界Q容器盒与它的左边~之间生了一?00px的间隙。到现在为止Q一直都q不错?br /> .floatbox { float: left; width: 150px; height: 150px; margin: 5px 0 5px 100px; } 陈旧的IE“双倍占?#8221; 原样的相同代码被在IE/Win中浏览时以些微不同的方式昄Q下面的N展示了IE/Win在布局上所做的?br /> qؓ什么会发生Q别问这U傻问题Q这是IEQ记得吗Q符合标准只是理想的状况Q不指望实现Q这个简单的事实正验证了?br /> 重点 q个Bug仅当动边界和Q动元素的方向相同时出现在动元素和容器盒的内边缘之间Q在q之后的L有着怼边界的Q动元素不会呈现双倍边界。只有特定的动行的W一个Q动元素会遭遇q个Bug。像居左的情况一P双倍边界同LU地昄在居右的相同方式?br /> 最后,修复办法Q?br /> 直到现在(04q??q个Bug一直被认ؓ是无法修复的Q通常用来替代错误的边界的控制Ҏ如:一个不可视动元素的左边距Q连同一个内嵌的盒子一P可视的盒子装在不可视动元素里;或者用技巧仅对IE/Win讑֮边界?/2倹{这办法生效了,但是是q而且搞糟了干净的源代码。不q现在全部结束了?br /> Steve Clason发现了一个修复办法,描述在他的Guest Demo里,修复了双倍边界和围绕文字~进Bug。这是一个经典的IE的Bug修复办法Q用一个属性来修复影响不相兛_性的Bug?br /> 现在如何来做Q?br /> 研究它,单地{display: inline;}讄lQ动元素就是全部所需做的Q是的,听v来太单了Q不是吗Q不q这是真的,仅仅一个display?inline"声明已经能够胜Q了?br /> 熟悉规则的h知道动元素自动讄?block"元素Q而不他们之前是什么。就如Steve从W3C里指出: 9.5.1 Positioning the float: the 'float' property "This property specifies whether a box should float to the left, right, or not at all. It may be set for elements that generate boxes that are not absolutely positioned. The values of this property have the following meanings: left The element generates a block box that is floated to the left. Content flows on the right side of the box, starting at the top (subject to the 'clear' property). The 'display' is ignored, unless it has the value 'none'. right Same as 'left', but content flows on the left side of the box, starting at the top. none The box is not floated. " q说明Q动元素上的{display: inline;}会被忽略Q事实上所有的览器没有呈CQ何改变,包括IE。但是,它不知何故让IE停止Q动元素的边界d。因而,q个修复办法可以被直接应用,而没有Q何繁琐的隐藏Ҏ。如果将来的一ƾ浏览器军_对这个修复办法抱恙,只要把这个修复装入IE独用的Tan Hack里,l节如同IE Three Pixel Text-Jog Demo?br /> 下面是两个用了前面相同代码的生动演C,W一个照常显CZIE的BugQ下一个对动元素使用?inline"修复?br />.floatbox { float: left; width: 150px; height: 150px; margin: 5px 0 5px 100px; display: inline; } firefox和IEҎ些css样式的认定有不少区别Q包括: ul和ol的默认padding值是不一LQ在Firefox中,padding-left默认gؓ40px左右Q而IE中ؓ0Q一般设|ul{margin:0;padding:0;}p解决大部分问?br />对字体大small的定义不同,Firefox中ؓ13pxQ而IE中ؓ16pxQ差别挺大,也只能设|ؓ14px了事Q?暂时没有发现) q列排列的多个元素(囄或者链接)的代码中的空格和回R会造成元素之间的间隙,而在firefox中和在IE中显C是不一LQIE昄I格Q约8pxQ、firefox昄I格Q约4pxQ?br />对不规范代码的兼Ҏ况不同,IE中漏掉的关闭W号ҎCZ造成影响Q而firefox中就会Ş成错q布局Q而在ie中用到的padding和margin的负值都会被firefox解析?Q易造成布局的乱;Q我觉得好像负值在firefox中也是有昄的) firefox对于镉K寸的严D析会造成与设|不匚wQ超出)的图片或表格原讄div撑大Q?br />Qimportant属性可以在除IE览器的其他览器中起作用,因此有h利用q种差别来o一个CSS兼容多种览器; 未定义id的divQ在IE中会与div属性中的其他设|有养I而在firefox中的位置会于div在文件中位置有关Q紧随前一个div出现……Q有待尝试) 讄为float的div在ie下设|的margin会加倍的Q特别是margin-leftQ这是ie6的一个bug。解决的Ҏ是在q个div里面加上display:inline; 如果是动态地d内容Q高度最好不要定义。浏览器可以自动伸羃Q然而如果是静态的内容Q高度最好定好。(g有时候不会自动往下撑开Q不知道具体怎么回事Q?br />FF: div 讄 margin-left, margin-right ?auto 时已l居? IE 不行。IE里设|text-align:centerQ就居中了,但在FF中不行。所以一般两个都要设|?br />FF: 讄 padding ? div 会增?height ?width, ?IE 不会, 故需要用 !important 多设一?height ?widthQ也没感觉,觉得设了paddingQ大家的高宽都变了) 在FF中可以实现的div 垂直居中问题: vertical-align:middle; 行距增加到和整个DIV一样高 line-height:200px; 然后插入文字Q就垂直居中了。缺Ҏ要控制内容不要换行。这U方法在IE中实C了。(已试q!有用Q?br />FF: 链接加边框和背景Ԍ需讄 display: block, 同时讄 float: left 保证不换行?br />在Q动(floatQ的div后加clear属性,q可以解册景的自适应高度问题。怎么加才能让不同览器都好QIE中有默认行高Q这是要解决的问题?br />FF中不支持文字的自动{行;什么word-wrap:break-word;word-break:break-all都是IE搞的|Ҏ׃W合css标准。(现在看到的解军_法都是通过~程实现Q?br /> ul和ol的默认padding值是不一LQ在Firefox中,padding-left默认gؓ40px左右Q而IE中ؓ0Q一般设|ul{margin:0;padding:0;}p解决大部分问?br />对字体大small的定义不同,Firefox中ؓ13pxQ而IE中ؓ16pxQ差别挺大,也只能设|ؓ14px了事Q?暂时没有发现) q列排列的多个元素(囄或者链接)的代码中的空格和回R会造成元素之间的间隙,而在firefox中和在IE中显C是不一LQIE昄I格Q约8pxQ、firefox昄I格Q约4pxQ?br />对不规范代码的兼Ҏ况不同,IE中漏掉的关闭W号ҎCZ造成影响Q而firefox中就会Ş成错q布局Q而在ie中用到的padding和margin的负值都会被firefox解析?Q易造成布局的乱;Q我觉得好像负值在firefox中也是有昄的) firefox对于镉K寸的严D析会造成与设|不匚wQ超出)的图片或表格原讄div撑大Q?br />Qimportant属性可以在除IE览器的其他览器中起作用,因此有h利用q种差别来o一个CSS兼容多种览器; 未定义id的divQ在IE中会与div属性中的其他设|有养I而在firefox中的位置会于div在文件中位置有关Q紧随前一个div出现……Q有待尝试) 讄为float的div在ie下设|的margin会加倍的Q特别是margin-leftQ这是ie6的一个bug。解决的Ҏ是在q个div里面加上display:inline; 如果是动态地d内容Q高度最好不要定义。浏览器可以自动伸羃Q然而如果是静态的内容Q高度最好定好。(g有时候不会自动往下撑开Q不知道具体怎么回事Q?br />FF: div 讄 margin-left, margin-right ?auto 时已l居? IE 不行。IE里设|text-align:centerQ就居中了,但在FF中不行。所以一般两个都要设|?br />FF: 讄 padding ? div 会增?height ?width, ?IE 不会, 故需要用 !important 多设一?height ?widthQ也没感觉,觉得设了paddingQ大家的高宽都变了) 在FF中可以实现的div 垂直居中问题: vertical-align:middle; 行距增加到和整个DIV一样高 line-height:200px; 然后插入文字Q就垂直居中了。缺Ҏ要控制内容不要换行。这U方法在IE中实C了。(已试q!有用Q?br />FF: 链接加边框和背景Ԍ需讄 display: block, 同时讄 float: left 保证不换行?br />在Q动(floatQ的div后加clear属性,q可以解册景的自适应高度问题。怎么加才能让不同览器都好QIE中有默认行高Q这是要解决的问题?br />FF中不支持文字的自动{行;什么word-wrap:break-word;word-break:break-all都是IE搞的|Ҏ׃W合css标准。(现在看到的解军_法都是通过~程实现Q?br /> css解决不同览器的兼容问题的方? Q不是我们需要的ҎQ我们要辑ֈ的要求是量不写!important也能解决Q?br /> 解决q种问题可以通过规范css代码Q其符合两U规范的标准样式Q也可以在差别处利用Qimportant对firefox讄属性,或者针对多U浏览器分别各自配置合适的CSS文gQ再通过判断览器选择不同CSS实现兼容性?br /> 代码如下Q?br /> <!--[endif]--> <!--[endif]--> #example { color: #333; } * html #example { color: #666; } *+html #example { color: #999; } q样在IE6中显C字体颜色是#666Q在IE7中显C的字体颜色?999Q在FF中显C的颜色?333 3.FF解决背景的自适应高度问题 ①对于背景不能自动延的原因上面说的很清楚Q解x法是多嵌套一个层,q个层设|Q动,q承担背景,ok了?br />下面q单示意一?br /> 本行代码是让背景颜色自动gl?br /> 可以q么理解Qfloat使得层自动获得宽和高 但是有了W三U方法,q种Ҏ好像q不值得推荐?br /> ②另一U方法就是给W一个div赋予属性|display:tableQ但q种Ҏ会造成另外一些布局上的错误。可以考虑使用Q但不徏议用?br /> ③我想q是最重要的一U方法,但是中间问题很多。方法就是clear:both?br /> .clear{clear:both}可以佉K度向下gl,但是会自动生行高; .clear{clear:both;height:0}在FF中清除了行高Q但是IE里不认; .clear{clear:both;height:1%}在FF和IE中仍然不认; 像之前写?clear{clear:both;height:1%;font-size:0px;overflow:hidden}在IE中好使,但在FF中却不能让背景颜色gl,除非加上Ҏ。!挺有意思,q是不太?br /> .clear{clear:both;line-height:1px}好Q我理解是清的这个容器默认是行元素,所以高对它不v作用Q所以你无论把height讄为几都没有效果,而line-height本n是作用于行元素的,所以好使! 上面理解的不?重新理解是:IE里面有默认的行高Q必L行高l清掉,可以用font-size:0px或line-height:0pxQ但是这里又有一个问题,是height的g要用癑ֈ敎ͼ没有用! 本行代码是让背景颜色自动gl?br /> 代码如下Q?br /> <!--[endif]--> <!--[endif]--> #example { color: #333; } * html #example { color: #666; } *+html #example { color: #999; } q样在IE6中显C字体颜色是#666Q在IE7中显C的字体颜色?999Q在FF中显C的颜色?333 ]]>
վ֩ģ壺
¡ |
ɽ |
ͨ |
ײ |
|
˹ |
|
绯 |
ƺ |
˷ |
|
|
|
¡ |
|
|
|
пǰ |
˫ |
|
|
|
ͭ |
|
ϴ |
봨 |
ɽ |
|
ɳ |
|
̩ |
|
ٲ |
|
ͨ |
̨ |
|
ͩ |
˰ |
˼é |
¯ |