我呢经常能在一些大网站上中见到一些以短横杠 - 开头的属性,一般是以 -moz,-ms,-webkit,-o开头的属性,这些奇怪的属性其实都是为了兼容不同的浏览器,以这些开头的属性一般都是这个浏览器的私有属性。其中:

    • -moz代表firefox浏览器私有属性;
    • -ms代表IE浏览器私有属性;
    • -webkit代表chrome、safari私有属性;
    • -o代表Opera私有属性。

    他们的一些私有属性,多是在CSS属性前加上各自的以横杠开头的标识,比如box-sizing,在Chrome浏览器中就可以写为 -webkit-box-sizing,其他属性同理。
    所以,为了兼容性,可以在写一个重要的CSS属性时,将这些全部写一遍,浏览器会自动找到各自使用的属性。
    还是以box-sizing为例:

    1. *,
    2. *::before,
    3. *::after {
    4. -webkit-box-sizing: border-box;
    5. -ms-box-sizing: border-box;
    6. -moz-box-sizing: border-box;
    7. -o-box-sizing: border-box;
    8. box-sizing: border-box;
    9. margin: 0;
    10. padding: 0
    11. }

    不重要的CSS属性就不用写了,用户难看就难看吧,建议其升级浏览器即可。