拓宽动力网站优化服务热线 Hi,欢迎访问深圳网站优化seo公司-智汇蓝媒,我们提供专业的百度SEO网站优化服务!
专注一站式网络营销服务

您现在所在的位置:主页 > 新闻动态 > 品牌营销建站专题 >

网站对于浏览器兼容的常见案例

来源: 拓宽动力 作者: yaohua 时间:2011-12-01

本文标签::深圳网站制作(4)

    深圳网站制作公司在为客户建站时发现并由于浏览器内核结构不同对同一段代码有不同的解析,造成页面显不统一的效果。而这是与我们的需求是相违背的。要解决用户访问的统一性,关键在于解决网站代码对于浏览器的兼容性
    深圳网站制作公司首要提一点是开发人员要对代码的使用精通熟悉,对于刚接触div+css的开发人员建议打好基础css属性使用比如float,clear等。在这里我们主要介绍浏览器差异性出现的兼容性问题以及解决方法,前期开发人员要素
代码的使用性

    常遇问题一:不同浏览器的标签默认的外补丁和内补丁不同。
    当我们使用标签不加样式控制的情况下,各自的margin 和padding差异较大;我们可以在css理设置“*{margin:0;padding:0;}”解决这种情况。这个是最常见也是最易解决的一个浏览器兼容性问题,几乎所有的css文件开头都会用通配符*来设置各个标签的内外补丁是0。

    常遇问题二:块属性标签float后,又有横行的margin情况下,在ie6显示时,后面的一块会被顶到下一行,尤其出现在稍微复杂点的页面。这是div+css使用div float布局模式通过margin实现横向间距最常见出现兼容问题。
    遇到这种情况可以在float的标签样式控制中加入 display:inline;将其转化为行内属性。

    常遇问题三:设置小圆角背景的标签里,设置较小高度标签(一般小于10px),在ie6,ie7,遨游中高度超出自己设置高度。由于ie6、7和遨游里这个标签的高度不受控制,要把超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。而ie8以后的浏览器都会给标签一个最小默认的行高的高度。一般不会出现这种问题。

    常遇问题四:行内属性标签,设置display:block后采用float布局,又有横行的margin的情况,ie6里的间距比超过设置的间距。
    行内属性标签,为了设置宽高,我们需要设置display:block;(除了input标签比较特殊)。在用float布局并有横向的margin后,在ie6下,他就具有了块属性float后的横向margin的bug。不过因为它本身就是行内属性标签,所以我们再加上display:inline的话,它的高宽就不可设了。这时候我们还需要在display:inline后面加入display:talbe。

    常遇问题五:几个img标签放在一起的时候,有些浏览器会有默认的间距,加了问题一中提到的通配符也不起作用。
    因为img标签是行内属性标签,所以只要不超出容器宽度,img标签都会排在一行里,但是部分浏览器的img标签之间会有个间距。去掉这个间距使用float是正道。在这里我们不可以使用负margin,虽然能解决,但负margin本身就是容易引起浏览器兼容问题的用法。

    常遇问题六:在B/S系统前端开,当内容小于一个值(如300px)时。容器的高度为300px;当内容高度大于这个值时,容器高度被撑高,而不是出现滚动条。标签最低高度设置min-height不兼容
    如果我们要设置一个标签的最小高度200px,需要进行的设置为:{min-height:200px; height:auto !important; height:200px;overflow:visible;}

    常遇问题七:透明度的兼容css设置
    设置了透明度的元素,会把透明效果一直延伸到它内部的各个元素,为了让透明背景上的文字或其他元素保持不透明的状态,可以把这些元素写在与透明背景元素同级的div(根据需要选择块元素或内联元素),利用CSS定位到透明背景上。
 


拓宽动力是深圳一家互联网基础服务商,提供深圳网站建设-深圳网站制作- 深圳SEO-深圳网站优化- 深圳网络推广-深圳网站推广,集网站建设、网站优化、网站推广、网站运营于一体!力助企业实现网络梦想,帮助企业打造网络赚钱机器。咨询热线:0755-88842685.

关于我们-联系我们-诚征英才-法律声明-付款方式-加盟合作-友情链接-站点地图

Copyright ©2013 COMSEO.NET,Inc,All rights reserved | 粤ICP备18027777号 |
地址:深圳市宝安区兴业路2005号广兴源互联网创意园A409
业务联系:0755-23358690| 传真:0755-23358690| 客户服务:400-168-8366