最近在研究一些关于浏览器兼容性问题的css问题,先归纳总结如下:
(1)在一些现代浏览器(opera,chrome,谷歌,safari)中,如果给块级标签如div设置padding后会导致元素的height和width增加,在ie中则不会增加,但是只在ie6中不增加,ie7以上在ietester中测试都会增加,解决办法:可以使用 !important 多设一个 height 和 width
(2)使元素水平垂直居中:垂直居中:将该元素的line-height设置为元素本身的高度,再通过vertical-align: middle;( 注意内容不要换行),水平居中:将元素的margin设置为auto;但是在ie5下没有效果
(3)想给像a,spa这样的行内元素进行样式设置,需要将它的display设置为block
(4)ie在浮动时候产生的双倍距离:若给一个div设置了float,
并且设置了margin,ie5和ie6会产生双倍的间隔,但是在其它的ie版本下就不会,在一些现代浏览器中也不会。解决办法:给该元素添加一个样式:display:inline即可
(5)第二点是 ie对于css的magin padding 等默认值为0px,但ff却不一样,为了保持外观的统一性,即使padding为0你也要写上,以免ff在浏览中的错位。
(6)firefox不支持hand,但ie支持pointer ,两者都是手形指示。 解决方法:统一使用pointer。
(7)ul标签在ff下面默认有list-style和padding, 最好事先声明, 以避免不必要的麻烦;(常见于导航标签和内容列表)
(8)作为外部wrapper的div不要定死高度, 最好还加上 overflow: hidden;以达到高度自适应;
(9)透明度问题:ie下:filter:alpha(opacity=opacityvalue);其中opacityvalue的值为0-100的整数,firefox下以及其他浏览器:opacity=opacityvalue;其中opacityvalue的值为0-1的小数
(10)有关float属性带来的差异性:
1:如下情况:
.left{width: 300px;height: 300px;float: left;border:1px solid black;}
.center{width: 400px;height: 400px;float: left;border:1px solid black;}
.right{width: 200px;height: 200px;border:1px solid black;clear: both;}
aaaasddddddddddddddddddddddddddddddddddddddddd
aaaasddddddddddddddddddddddddddddddddddddddddd
HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号