日期:2014-05-17  浏览次数:20808 次

巧用 UserAgent 代替拙劣的 CSS hack


看下面的代码:

?

?

html button{color:darkgreen\9; _color:blue;}
*+html button{color:red;}
??

多么纠结啊,为什么不能通过UserAgent判断浏览器?看下面的CSS部分多犀利:

?

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <script src='http://code.jquery.com/jquery-1.8.2.min.js'></script>
    <script src='./no-css-hack.js'></script>

    <style type='text/css'>
      html.moz button{box-shadow: 2px 2px 5px darkgreen;}
      html.ie6 button{background-color: gray; border: 1px outset;}
      html.opera button{padding:30px; font-size:30px;}
    </style>

  </head>

  <body>
    <button>this is a button</button>
  </body>
</html>

不过还有一小点问题,IETester下的UserAgent使用的是你电脑上IE的UserAgent,也就是说,如果你装的是IE9,那么就会被当作IE9处理,最好的做法是在虚拟机里装个XP+IE6