IE和FireFoxl对CSS的不同解析
浅谈IE与Firefox对CSS的不同解析——安徽迎客松
其实,以前从来没有接触过CSS相关的内容,都是在做业务的编程,从来没想过前台页面的设计也能如此复杂。这次项目的开过过程中,作为CSS菜鸟的我也接触到CSS的相关设计。所出现的低级问题和浪费很多时间的状况也层出不穷,所以通过各方搜索和自己的实际学习中总结出几点IE和Firefox对CSS的区别,给大家借鉴。
首先,大家都知道,IE和Firefox针对于核模型的解析就不一样,自然会产生很多让人挠头的问题,以下就是我的经验总结:
1.高度的区别
IE:在没有定义高度时候,将根据内容高度的变化,包括未定义高度的图片内容;
在定义了高度时候,当内容超过高度时,将使用实际内容的高度。
FF:在没有定义高度时,如果内容中包括了图片内容,MF的高度解析是根据印刷标准,这样就会造成和实际内容高度不符合的情况;
在当定义了高度,但是内容超过高度时,内容会超出定义的高度,但是区域使用的样式不会变化,造成样式错位。
建议:在可以确定内容高度的情况下最好定义高度,如果真的没有办法定义高度,尽量不用使用边框样式。
2.宽度的区别
IE:内容宽度=您定义的容器宽度(Internet Explorer ’width’)-padding宽度-border宽度。
IE中定义 width:100px;padding:5px 的话,所显示的宽度就是100px。
FF:容器占的宽度=内容宽度+padding宽度+border宽度。
Firefox中定义 width:100px;padding:5px 的话,所显示的宽度就是105px。
建议:使用 !important;但是,!important一定要在前面。
如:width:95px !important;width:100px;padding:5px;。
注:高度亦是如此!
3.浮动(float)的区别
(1)空格处理
IE:对于DIV并排时候使用float关键字时候,IE对块与块之间的空格是处理的。
FF:对于DIV并排时候使用float关键字时候,Firefox对块与块之间的空格是不处理的。
建议:经常发现使用float关键字时候在Firefox显示正常,但是在IE中会出现空格,就是这个原因;
避免在div连div时候添加空格或者回车,也即是一个div紧接这一个div写;
或者,将div放入li中进行处理,这样就不会有空格的问题。
(2)Margin加倍
IE:在使用float的情况下,IE的margin加倍。
FF:正常显示。
建议:针对IE,添加display:inline;
相应的css为
#float{
float:left;
margin:5px;/*IE下理解为10px*/
display:inline;/*IE下再理解为5px*/
}
4.鼠标位置处理
相关文档:
平 时拿CSS布局都是一些内容比较多的网站,前两天用CSS+DIV弄了个内容少的页面,发现了一个小问题,可能大家都会遇到,那就是网站FOOTER的定 位,如果内容比较少的话,页面的FOOTER就会随着内容的减少跑到上面去,不是乖乖的在下面呆着,害得我研究了半天找高人终于给搞定了,也算一个小小的 技巧给大家分享
首先我们要在外层设定一 ......
效果图:
csstest.css
*{
margin-left:0;
margin-top:0;
font-size:12px;
color:White;
}
#biaoge
{
/*对ID为biaoge的标签使用此CSS*/
width:405px; /*列宽100,加上五个为1的边距,四列就是405*/
&nbs ......
1) 编译CSS资源
文件浏览器(Navigator)中,在标准的Flex CSS文件上点击右键,点击Compile CSS to SWF即可完成编译CSS的任务。
在程序中可以用StyleManager.loadStyleDeclarations()来读出已编译好的CSS文件中的内容。
具体操作如下:
&nbs ......
盒子标签和属性对照
CSS语法(不区分大小写)
JavaScript语法(区分大小写)
border
border
border-bottom
borderBottom
border-bottom-color
borderBottomColor
border-bottom-style
borderBottomStyle
border-bottom-width
borderBottomWidth
border-color
borderColor
border-left
borderLeft
border ......