怎样解决Internet Explorer与firefox中样式不同
用DIV+CSS布局的网页在firefox显示与在IE中显示为什么不同,它们各支持和不支持哪些样式?有什么解决方法呢...希望能说的详细点...joier说的2个解决办法...
用DIV+CSS布局的网页在firefox显示与在IE中显示为什么不同,它们各支持和不支持哪些样式?有什么解决方法呢...希望能说的详细点...
joier 说的2个解决办法:1声明所有的默认项,不让浏览器使用默认属性(怎么声明呢?)2.使用hack对不同的浏览器指定不同的属性;(可以解释的更详细点么?不如举个例子什么的...谢谢) 展开
joier 说的2个解决办法:1声明所有的默认项,不让浏览器使用默认属性(怎么声明呢?)2.使用hack对不同的浏览器指定不同的属性;(可以解释的更详细点么?不如举个例子什么的...谢谢) 展开
2个回答
展开全部
产生不同的原因是因为IE和FF对于样式表的一些默认处理不相同,
解决方法有两个:
1.声明所有的默认项,不让浏览器使用默认属性
2.使用hack对不同的浏览器指定不同的属性
要指定所有的默认项我现在一时也列不全,就说一下第二个吧:
举个例子,要在IE6,IE7,FF里分别用不同的margin,可以这样写:
#test {margin:100px; *margin:50px; _margin:80px;}
实现在效果是FF里为100px, IE7里为50px,IE6里为80px.
浏览器读取时是从前到后,当前后能读取到相同项的定义时,就用后面的覆盖前面的,上面那个例子中,FF读取第一个,不认识后两个,所有显示的是100px; IE7能认识前两个,不认识第三个,所以先读取了第一个,然后用第二个覆盖了第一个,显示为50px; IE6则是三个都认识,所以用第三个覆盖前两个,显示80px;
要注意写的顺序.FF最前,IE7第二,IE6第三
写的时候表现为 margin在最前, *margin在第二, _margin在最后.
换成padding和width等也是一样的做法
这个只是其中一种方法,其余还可以用!important等等,你可以去搜索CSS hack,会有更完整的解决方案
解决方法有两个:
1.声明所有的默认项,不让浏览器使用默认属性
2.使用hack对不同的浏览器指定不同的属性
要指定所有的默认项我现在一时也列不全,就说一下第二个吧:
举个例子,要在IE6,IE7,FF里分别用不同的margin,可以这样写:
#test {margin:100px; *margin:50px; _margin:80px;}
实现在效果是FF里为100px, IE7里为50px,IE6里为80px.
浏览器读取时是从前到后,当前后能读取到相同项的定义时,就用后面的覆盖前面的,上面那个例子中,FF读取第一个,不认识后两个,所有显示的是100px; IE7能认识前两个,不认识第三个,所以先读取了第一个,然后用第二个覆盖了第一个,显示为50px; IE6则是三个都认识,所以用第三个覆盖前两个,显示80px;
要注意写的顺序.FF最前,IE7第二,IE6第三
写的时候表现为 margin在最前, *margin在第二, _margin在最后.
换成padding和width等也是一样的做法
这个只是其中一种方法,其余还可以用!important等等,你可以去搜索CSS hack,会有更完整的解决方案
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询