css hack是指各個瀏覽器及其版本對css解析後產生效果差異。
css hack主要解決瀏覽器有IE6、IE7、IE8、chrome、Firefox、Safari、Opera,其他瀏覽器就
不用解決了,一般都是基於上面核心的,而且使用比例比較少。
對於IE瀏覽器:
<pre class="prettyprint linenums bush:css" lang="css"><style> p{ width:400px; height:400px; background-color:red; background-color:blue\9; /*所有IE*/ background-color:yellow\0; /*IE8 hack*/ _background-color:#CDCDCD; /* ie 6*/ *+html background-color:white; /*僅IE7*/ *background-color:pink; /*IE6 IE7 hack*/ @background-color:white; /*opera hack*/ } </style> <p>php點點通-關注php開發,提供專業php教程<p>
對於Firefox:
<pre class="prettyprint linenums bush:css" lang="css">*:lang(lang) selector { property:value !important; }
用偽類lang(語言)再加上!important進行定義的話,目前只有Firefox可以識別.
對於Safari:
<pre class="prettyprint linenums bush:css" lang="css">selector:empty { property:value !important; }
用偽類empty再加上!important進行定義的話,目前只有Safari可以識別.
對於Opera:
<pre class="prettyprint linenums bush:css" lang="css">@media all and (min-width: 0px){ selector { property:value; } }
利用特殊繼承法進行定義的話,目前只有Opera可以識別.
最後附上一張css hack表格:
<a title="css.jpg" href="http://www.php.cn/">
css.jpg" />