• 重构几点需注意

    2006-01-09

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://forest.blogbus.com/logs/1805091.html

    重构几点需注意(转于bencen.blogcup.com) 

    1.零值后需要跟%
    在使用RGB百分率值,甚至当值为零时也要带%,在其他CSS情况里则不需要带单位符号。

        2.不指定背景的颜色,只指定颜色是不够的,反之亦然.,Netscape 4.X在很多地方把透明理解成黑色,如果你用background : inherit;颜色将呈现为黑绿,那是因为Netscape 4不能识别inherit字符串,即使很明显,它不是十六进制值,也将其强制转为十六进制分析(IE/Windows4.0以前的版本也会出现这样的情况).也许你会认为,背景的颜色默认值都为transparent,如果你的网站用户是用Netscape 4,那你就头痛

        3.注意多重名称字体("Lucida Grande")必须直接用ASCII引号框起来,逗号要在后面的那个引号之后而不是在它之前.
    td{
        font-family:"Lucida Grande",Verdana,Arial,Sans-serif;
    }

        4.Netscape 4忽略继承,但能理解群选择器.(Netscape 4不是惟一不支持继承的老版本浏览器)
    body{
          font-family:Verdana,Sans-serif;
    }

    p,td,ol,ul,li,dl,dt,dd{
         font-family:Verdana,Sans-serif;
    }
    如果你不希望每个子元素都继承被指定为Verdana、Sans-serif字体,如,你要用Times字体显示段落,怎么办?你可以为P创建一个更详细的定义。
    body{
             font-family:Verdana,Sans-serif;
    }

    td,ul,ol,li,dl,dt,dd{
           font-family:Verdana,Sans-serif;
    }

    p{
       font-family:Times,"Times New Roman",serif;
    }

        5.@import只在5.0及以上的版本上有效,所以可以用@import对4.0浏览器隐藏样式表。

       6.Opera字体使用边框距而不是边距来设置页槽。所以才把边框距定义为0来适应它。

       7.块级元素存在其自身的“盒”中,后面跟一个暗藏的回车,内联元素是流的一部分,后面不跟回车。块级元素如段落就是,而标签就是内联元素。

      8.左对齐问题,为什么要指定文本的对齐位置为左对齐,因为IE/windows 的bug就会使文档居中,IE5/windows上不会发生这样的错误,其他浏览器也不会,这种行为是随机的。很多在CSS里并没有说明左对齐的元素在IE6/windows里也能正确地显示为左对齐,但有些则不能,你不知道哪些会正确显示而哪些不会,所以一律把它们指定为左对齐,从而避免出现这样的问题。

      以上是个人的读书笔记,还没有完整写出,有待完善,如有出错,请指正,想更仔细了解网站重构者,请购买《网站重构》本书。


    收藏到:Del.icio.us




    评论

  • 对于第一点“零值后需要跟%”,当在设定border值为0时不能加“%”!
    Ghost回复风的影子说:
    CSS要求一些属性值(如width、 height、font-size)必须要有单位。当属性值为0时是可以例外的。在那种情况下,没有单位也是必须的,因为0就是0,什么单位也都无所谓了。
    2006-03-22 17:17:14