在IE浏览器下CSS的ZOOM属性如何使用?

html-css017

在IE浏览器下CSS的ZOOM属性如何使用?,第1张

1.DOCTYPE

影响

CSS

处理

2.FF:

div

设置

margin-left,

margin-right

auto

时已经居中,

IE

不行

3.FF:

body

设置

text-align

时,

div

需要设置

margin:

auto(主要是

margin-left,margin-right)

方可居中

4.FF:

设置

padding

后,

div

会增加

height

width,

IE

不会,

故需要用

!important

多设一个

height

width

5.FF:

支持

!important,

IE

则忽略,

可用

!important

FF

特别设置样式

6.div

的垂直居中问题:

vertical-align:middle

将行距增加到和整个DIV一样高

line-height:200px

然后插入文字,就垂直居中了。缺点是要控制内容不要换行

7.cursor:

pointer

可以同时在

IE

FF

中显示游标手指状,

hand

IE

可以

8.FF:

链接加边框和背景色,需设置

display:

block,

同时设置

float:

left

保证不换行。参照

menubar,

a

menubar

设置高度是为了避免底边显示错位,

若不设

height,

可以在

menubar

中插入一个空格。

9.在mozilla

firefox和IE中的BOX模型解释不一致导致相差2px解决方法:

div{margin:30px!importantmargin:28px}

注意这两个margin的顺序一定不能写反,据阿捷的说法!important这个属性IE不能识别,但别的浏览器可以识别。所以在IE下其实解释成这样:

div{maring:30pxmargin:28px}

重复定义的话按照最后一个来执行,所以不可以只写margin:XXpx!important

10.IE5

和IE6的BOX解释不一致

IE5下

div{width:300pxmargin:0

10px

0

10px}

div的宽度会被解释为300px-10px(右填充)-10px(左填充)最终div的宽度为280px,而在IE6和其他浏览器上宽度则是以300px+10px(右填充)+10px(左填充)=320px来计算的。这时我们可以做如下修改

div{width:300px!importantwidth

/**/:340pxmargin:0

10px

0

10px}

关于这个/**/是什么我也不太明白,只知道IE5和firefox都支持但IE6不支持,如果有人理解的话,请告诉我一声,谢了!:)

11.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义

ul{margin:0padding:0}

就能解决大部分问题

zoom属性确实是ie专有属性,除了设置或者检索对象的缩放比例之外,它还具有触发ie的haslayout属性,清除浮动,清除margin重叠等作用。 但是火狐浏览器不支持zoom属性,不过在webkit内核浏览器中zoom这个属性也是可以被支持的。

显然,你这里设置的zoom:2,  即表示放大为原来的2倍,里面的字体也相应被放大了2倍。

在IE浏览器里,Zoom的使用方法是这样的:

 zoom : normal | number

normal :  默认值。使用对象的实际尺寸

number :  百分数 | 无符号浮点实数。浮点实数值为1.0或百分数为100%时相当于此属性的 normal 值用白话讲解就是zoom:后面的数字即放大的倍数,可以是数值,也可以是百分比。如:zoom:1,zoom:120%。而这个属性只有在IE中才起作用,所以很少用到它的实际用途,而最经常用到作用是清除浮动等。

其实这个属性是一个不标准的css属性,因此一般在非IE浏览器中是不推荐使用zoom来实现div 的缩放效果的,如果想要广泛引用实现放大或者缩小的效果,可以直接用css3的transform属性来替代的,即你这里可以设置为transform:scale(2)。关于transform属性的具体属性和使用可查看在线教程CSS3 transform 属性。

希望我的回答能够帮到你。

css中的zoom的作用\x0d\x0a1、检查页面的标签是否闭合\x0d\x0a不要小看这条,也许折腾了你两天都没有解决的 CSS BUG 问题,却仅仅源于这里。毕竟页面的模板一般都是由开发来嵌套的,而他们很容易犯此类问题。\x0d\x0a快捷提示:可以用 Dreamweaver 打开文件检查,一般没有闭合的标签,会黄色背景高亮。\x0d\x0a\x0d\x0a2、样式排除法\x0d\x0a有些复杂的页面也许加载了 N 个外链 CSS 文件,那么逐个删除 CSS 文件,找到 BUG 触发的具体 CSS 文件,缩小锁定的范围。\x0d\x0a\x0d\x0a对于刚才锁定的问题 CSS 样式文件,逐行删除具体的样式定义,定位到具体的触发样式定义,甚至是具体的触发样式属性。\x0d\x0a\x0d\x0a3、模块确认法\x0d\x0a有时候我们也可以从页面的 HTML 元素出发。删除页面中不同的 HTML 模块,寻找到触发问题的 HTML 模块。\x0d\x0a\x0d\x0a4、检查是否清除浮动\x0d\x0a其实有不少的 CSS BUG 问题是因为没有清除浮动造成的。养成良好的清除浮动的习惯是必要的,推荐使用 无额外 HTML 标签的清除浮动的方法(尽量避免使用 overflow:hiddenzoom:1 的类似方法来清除浮动,会有太多的限制性)。\x0d\x0a\x0d\x0a5、检查 IE 下是否触发 haslayout\x0d\x0a很多的 IE 下复杂 CSS BUG 都与 IE 特有的 haslayout 息息相关。熟悉和理解 haslayout 对于处理复杂的 CSS BUG 会事半功倍。推荐阅读 old9 翻译的 《On having layout》(如果无法翻越穿越伟大的 GFW,可阅读 蓝色上的转帖 )\x0d\x0a快捷提示:如果触发了 haslayout,IE 的调试工具 IE Developer Toolbar 中的属性中将会显示 haslayout 值为 -1。\x0d\x0a\x0d\x0a6、边框背景调试法\x0d\x0a故名思议就是给元素设置显眼的边框或者背景(一般黑色或红色),进行调试。此方法是最常用的调试 CSS BUG 的方法之一,对于复杂 BUG 依旧适用。经济实惠还环保^^\x0d\x0a最后想强调一点的是,养成良好的书写习惯,减少额外标签,尽量语义,符合标准,其实可以为我们减少很多额外的复杂 CSS BUG,更多的时候其实是我们自己给自己制造了麻烦。希望你远离 BUG ,生活越来越美好