关于游戏提名信息项目的总结

因为是游戏网站,所以对图片的要求比较高,这里除了总结一下图片的处理方法,另外讲一下ie6的兼容。

1、因为png24在ie6下面的兼容问题。

方法一:(适用于非纯背景的单个图片,使用不多)

用滤镜,但是滤镜在ietest里面是不支持的,我装的64位的操作系统,绿色版ie6也不支持。不能重装系统,就装了虚拟机,xp系统下的,ie6支持滤镜,使用无白边和锯齿。实例如下:

filter : progid:DXImageTransform.Microsoft.AlphaImageLoader ( enabled=bEnabled , sizingMethod=sSize , src=sURL )

代码解释:

属性:

  1. enabled:可选项。布尔值(Boolean)。设置或检索滤镜是否激活。true | false
    • true: 默认值。滤镜激活。
    • false:滤镜被禁止。
  2. sizingMethod:可选项。字符串(String)。设置或检索滤镜作用的对象的图片在对象容器边界内的显示方式。
  3. src:必选项。字符串(String)。使用绝对或相对 url 地址指定背景图像。假如忽略此参数,滤镜将不会作用。

    实例:
.png {
    background: url(绝对路径/images/bg.png) repeat;
    _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='scale', src="绝对路径/images/bg.png");
    _background:none;
}

 

下面是项目中使用的代码:

.png{background:url(../images/video-btn.png) no-repeat;_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/video-btn.png');_background-image:none;_position:relative;}
会发现针对ie6里面的代码的地址没有前面的../ ,非ie6的环境下面的是相对路径,后面滤镜必须要用绝对路径,注意此处的绝对路径是相对于当前网页的路径,而不是相对于css的路径,所以,不要../。

但是滤镜的使用,有很多局限,下面详细说一下:

      (reason1:仅适用于单个的图片,css sprite以及背景重复,背景定位都不适用,另外滤镜只能在背景上使用,形式上的img要用背景显示。

        reason2: 该滤镜不可过多使用,否则会影响性能,所以其他地方如果能用带纯色背景或非纯背景的jpg,尽量用jpg。

        reason3:AlphaImageLoader会导致该区域的链接和按钮无效,解决的办法是为链接或按钮添加:position: relative;使其相对浮动。

        reason4:为了使滤镜起作用,要为容器设置高宽值。

        reason5:sizingMethod='scale',其实是拉伸图片,可以模拟平铺。

             

方法二:

2、iepngfix.htc

方法三:

3、DD_belatedPNG


 

 2、用png8和gif,除非是纯的几何图形图标,一般情况下是绝对有白边的,所以,想要避免白边,只能在gif里面手工将白边填成纯色的gif或者png8。

 3、纯背景的ico可点击的图片,如果hover状态没有背景颜色的变化,可以使用jpg格式。

 4、图片滚动的左右翻页效果,如果是小三角符号,可以使用特殊符号里面的三角符,一来节省代码,二来减少图片。▲▼▶◀

 5、下面这个图片,注意两个问题。右边的方框内的左右括号用gif,纯几何图形,保存的时候填充白边位纯色。左侧是一个背景的平铺,这种形式的,用正方形没有效果,而是要用一整个竖条来平铺,如图所示。并且,因为有高度的不确定性,所以切的时候尽量将背景图片切高一点。

6、清除浮动的代码:

.clearfix:after { content:"."; display:block; height:0; visibility:hidden; clear:both; }
.clearfix { zoom:1; }
.clearit { clear:both; height:0; font-size:0; overflow:hidden; }

跟我之前的代码有一些不同,但是这个更好。

7、position与z-index,尽量一起用。float:left与display:inline尽量一起用,不需要特地使用*diaplay:inline;

8、position:relative,在ie6下面错位,必须同时设置top和left值。

9、页面当中的浮动窗口,放在body的最下面,给body设置position:relative。这样使用fixed的时候,也是相对于整个页面定位。如果你不是这么做的,在ie6下面突然出现错位的代码,并且块出现颤动,在颤动之后又显示正常了,那么怀疑是position的问题。

10、ie6下面,flash会一直显示在最高层,盖住浮动的窗口,所以,必须在flash的父级设置z-index比浮动窗口的z-index小,因为ie6是根据父元素的层级来判断所在层,flash默认为最高层。

11、可点击的按钮尽量用a标签,保证ie6下面的,所有按钮可点。注意的是,一般的可链接到单独页面的用"#",加入qq群,这里的a用#,因为腾讯提供的是一个链接地址,而微信,要用href="javascript:;"。

12、jquery在页面引用的时候,必须jq库引用放在head里面,其他的功能js和页面js,辅助的js放在body的最下面。,有利于页面快速的加载,然后再运行js?

另外jquery使用的时候,尽量使用单引号,双引号少用,避免因为引用html里面的双引号,影响jquery的代码。

 

 

 

posted @ 2013-12-04 11:56  sheena的世界  阅读(252)  评论(0编辑  收藏  举报