zoukankan      html  css  js  c++  java
  • 整理收集一篇CSS hack

    我们在制作网页的时候望望都要考虑到各个浏览器的兼容问题,这个问题让个网页设计师们很头痛,下面特整理收集一些hack代码给网页设计师们做参考分享,希望对你门有用

    1. 星号*
       IE都能识别*,标准浏览器如FF不能识别*。
       例:p { color:yellow; *color:red;}
       类似的有
       + 加号
       只有IE解释
       p{color:red; +color:blue}
       IE 显示blue  FF显示 red
    2.!important
       IE6及以下将会忽略该样式,IE7 FF将支持;
       p{color:red !important;color:yellow;}
       IE7 FF将红色  IE6显示黄色
       此处注意的是!important方法只是按上述格式后才被IE6及以下忽略,除此之外的提高样式权重方法可通用。
    3.下划线。
       IE6及以下版本将运用该样式,其他将忽略
       p{color:red; _color:blue}

    4、注释:   
        p {color:red};     
        这种样式在IE6中是可以应用显示的,而在IE5及以下版本是不会被处理的,所以可以针对IE5/6进行区别
    5、@IMPORT:
        在@IMPORT中使用URL来导入样式,标准用法是将URL中的值带上引号,如下@IMPORT URL("newstyle.css");这种用法  可以被IE5以上的浏览器及FF支持,从而实现了IE4的样式单独处理.
        另外,还有一个方法:
        @IMPORT URL("noie.css") screen;
        screen是用于指定设备类型的选项,screen用于屏幕显示,print用于打印设备显示但是IE对这种方法不支持,,所有的IE浏览器,从而可以进行IE和FF的区别。
    6、属性选择符:    用于对具有特定属性的对象进行选择
        span[class=left]{color:blue}     
        span[title]{color:red;}    
       IE6不支持,但是在FF里面工作正常,所以可以对IE和FF进行分别处理.
        在实际开发中,经常要对IE和FF进行分别处理,可以用如下代码:
        #content{
        color:red;
        }
        [xmlnx] #content{
        color:blue
        }
       此种方法我觉得很实用,也经常用,推荐朋友使用,如需更详细的说明,我可以再发贴。
    7.子对象选择符:
       span>p{color:red}
       IE6也是没有支持,也可用来区别IE和FF
    8、Tantek方法
       #content{
                   color:blue;
                   voice-family:"\"}\"";
                   voice-family:inherit;
                   color:red;
       }
       上面的代码在使用了voice-family之后下面的color:red,将不会被IE5.5及以下浏览器所解析.因此在IE6/7/FF上文本颜色将呈现红色,在IE5.5及以下浏览器上将呈现蓝色;
       另外,voice-family还有一种处理方式:
       #content{
                    color:red;
                    voice-family:"}"
                    voice-family:inherit;
                    color:blue;
       }
       使用这个方法,将使IE6及以下版本浏览器与FF浏览器的文字都呈现红色,而IE5及以下版本浏览器呈现蓝色!
    9、转义属性
        p{w\idth:200px;}
        IE5.5 以下将忽略。注意:反斜线字符不能出现在0-9或字母a-f前面
    10、IE中的条件注释
    一、条件注释简介
        IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的
        hack方法。
        条件注释只能用于IE5以上。
        如果你安装了多个IE,条件注释将会以最高版本的IE为标准。
        条件注释的基本结构和HTML的注释(<!– –>)是一样的。因此IE以外的浏览器将会把它们看作是普通的
    注释而完全忽略它们。
        IE将会根据if条件来判断是否如解析普通的页面内容一样解析条件注释里的内容。
    二、条件注释属性
        gt : greater than,选择条件版本以上版本,不包含条件版本
        lt : less than,选择条件版本以下版本,不包含条件版本
        gte : greater than or equal,选择条件版本以上版本,包含条件版本
        lte : less than or equal,选择条件版本以下版本,包含条件版本
        ! : 选择条件版本以外所有版本,无论高低
    三、条件注释使用方法
        注意把代码中的<>换成英文中相应的大于或小于号
        <!--[if IE 5]>仅IE5.5可见<![endif]-->
        <!--[if gt IE 5.5]>仅IE 5.5以上可见<![endif]-->
        <!--[if it IE 5.5]>仅IE 5.5以下可见<![endif]-->
        <!--[if gte IE 5.5]>IE 5.5及以上可见<![endif]-->
        <!--[if ite IE 5.5]>IE 5.5及以下可见<![endif]--><!--[if !IE 5.5]>非IE 5.5的IE可见<![endif]
        -->
        下面的代码是在非IE浏览器下运行的条件注释
        <!--[if !IE]><!-->您使用不是 Internet Explorer<!--<![endif]-->
        <!--[if IE 6]><!-->您正在使用Internet Explorer version 6或者 一个非IE 浏览器<!--<![endif]-


    该文章出自《无限畅想》,原文链接:http://www.admincss.com/post/hack-web.php

    转载时间是: 2008-12-03 12:59:02 请保留此链接,谢谢!

  • 相关阅读:
    Web架构中的前端页面缓存
    Drools 使用Spring中的bean
    大型Java多用户商城系统设计开发的心得和困难
    正则表达式
    No ideal,no future
    关于sql 2005 assembly
    修改aspx输出的action地址 
    关于[META HTTPEQUIV="REFRESH" CONTENT=2]
    最简单的兼容firefox和ie的锚点方法
    【IIS】检索COM类工厂中CLSID为{0002450000000000C000000000000046}的组件时失败,错误: 80070005
  • 原文地址:https://www.cnblogs.com/luluping/p/1347039.html
Copyright © 2011-2022 走看看