• DIV+CSS排版时注意的一些问题

    2010-11-02

         1。图片问题

         IE6添加图片会产生2px的BUG,如果你不想产生这个BUG可以直接把图片设置为背景也可以消除这个BUG,或者把层设置 font-size:1px;line-height:1px;
        

         2。CSS的书写建议

          给CSS文件加注释。注释会为你今后的维护带来方便,建议尽可能给CSS文件加注释,不要担心增加少量的字节。尽量简写CSS语法。比如颜色值"#FFFFFF"可以简写成"#FFF";"padding-top:30px;Padding-right:0;padding-bottom:10px;padding-left:20px"可以简写为"padding:30px010px20px;"。在定义技巧上有更多的节省技巧,随着对CSS应用的熟练,你会不断发现更好的办法。

        3。XHTML校验的问题

           target="_blank",这个语法在HTML4.0里是正确的,在XHTML1.0里是不允许使用的。解决的办法之一是写成target="new",另外一个办法是用js处理所有的target;

          样式表好不要内嵌,将样式表文件独立出来易于维护。

        4。用!important解决IE和Mozilla的布局差别

          

          !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权,重要的一点是:IE一直都不支持这个语法,而其他的浏览器都支持。因此我们就可以利用这一点来分别给IE和其他浏览器不同的样式定义,例如,我们定义这样一个样式:

          .colortest{ border:20pxsolid#60A179!important; border:20pxsolid#00F; padding:30px; width:300px;}

           在Mozilla中浏览时候,能够理解!important的优先级,因此显示#60A179的颜色;在IE中浏览时候,不能够理解!important的优先级,因此显示#00F的颜色。

           5。解决超链接访问过后hover样式不显示的问题

             改变CSS属性的排列顺序: 先后顺序标准应为:a:link—a:visited—a:hover—a:active
        

           6。Li中内容超过长度后以省略号显示的方法
         

           

            7。margin和padding定义尺寸的缩写

            margin:3px——表示所有边都是3px;
            margin:3px  5px—— 表示top和bottom的值是3px ,right和left的值是5px
            margin:3px  5px 7px——表示top的值是3,right和left的值是5,bottom的值是7
            margin:3px  5px 7px 5px——四个值依次表示top,right,bottom,left;上右下左。
        

           8。解决IE不能正确显示透明PNG——header内加入代码

          


            9。BOX模型在firefox和IE中的解释相差2px的解决方法

            div{margin:30px!important;margin:28px;}

    注意这两个margin的顺序一定不能写反。根据上面提到的IE并不支持!important,所以在IE下其实解释成这样:

    div{maring:30px;margin:28px}

    重复定义的话按照后一个来执行,所以不可以只写margin:XXpx!important;

          10。margin的默认效果
    div里的内容,ie默认为居中,而ff默认为左对齐。使ff内容居中的方法是增加代码margin:auto;