zoukankan      html  css  js  c++  java
  • css兼容

    在csss使用中我们发现会用一些兼容些问题,尤其在IE上表现的最为突出,毕竟IE人神共愤呀,一般我们大多数人会使用CSShack

    很多人会想到用前缀这种:

    -ms-transform:rotate(30deg); /* IE 9 */
    -moz-transform:rotate(30deg); /* Firefox */
    -webkit-transform:rotate(30deg); /* Safari and Chrome */
    -o-transform:rotate(30deg); /* Opera */

    类似上面这种,但在操作中发现并不是很好用,只能解决很少部分不兼容

    1、首先是火狐的兼容

    @-moz-document url-prefix() { .selector { property: value; } }

    这是仅被火狐识别的标示,其中方法细分还有很多,不过这个我感觉是最常用的。

    2、使用webkit的游览器比如chrome and safari

    @media screen and (-webkit-min-device-pixel-ratio:0) { Selector { property: value; } }

    3、Opera浏览器

     @media all and (min-0) { Selector {property: value;} }

    4、IE游览器

    首先是添加头部

    <meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1" />
    <meta http-equiv="X-UA-Compatible" content="IE=9" />

    类似这种头部网上有很多,大概意思就是让按规定的版本进行解析,效果还是非常好的,对于剩下有的小细节我一般三种:

    属性前缀法(即类内部Hack):例如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",IE6~IE10都认识"9",但firefox前述三个都不能认识。

    选择器前缀法(即选择器Hack):例如 IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-child+html .class{}。

    IE条件注释法(即HTML条件注释Hack):针对所有IE(注:IE10+已经不再支持条件注释): <!--[if IE]>IE浏览器显示的内容 <![endif]-->,针对IE6及以下版本: <!--[if lt IE 6]>只在IE6-显示的内容 <![endif]-->。这类Hack不仅对CSS生效,对写在判断语句里面的所有代码都会生效。

    方法不多,不过够用就行了,IE的在我遇到的问题中条件注释法没用不知道是为什么。。。。可能人品太差了^-^

  • 相关阅读:
    Luogu 2254 [NOI2005]瑰丽华尔兹
    Luogu 3168 [CQOI2015]任务查询系统
    Luogu U15118 萨塔尼亚的期末考试(fail)
    POJ 2778 DNA Sequence AC自动机 + 矩阵快速幂
    HDU 2457 DNA repair AC自动机 + dp
    POJ 3522 Slim Span 暴力枚举 + 并查集
    POJ 2955 Brackets 区间dp
    hdu 2604 Queuing dp找规律 然后矩阵快速幂。坑!!
    UESTC
    java & SQL
  • 原文地址:https://www.cnblogs.com/yuanzhiguo/p/6986144.html
Copyright © 2011-2022 走看看