我们都知道浏览器之间是有差异的,很多人在使用XHTML+CSS方式制作网页的时候都曾为此无比头痛。要在这些差异的影响下工作需要很多的技巧,“隐藏CSS”就是其中很重要的一种技巧(甚至是最重要的)。这种技巧的主要思想是,用某些方式对某些浏览器隐藏某些重载的CSS规则。
这篇文章并不是想教你如何使用这种技巧,它面向的是有一定CSS基础的设计开发者,我假定你曾经使用过某种隐藏CSS规则的方法。这里是想把可用的方法与被隐藏规则的浏览器都列出来,方便大家在平时工作时随时查阅。
在这张大表里列出了九种方法,我就称其为“独孤九剑”,希望能帮上你的忙:-D
注:此表格原载 w3development.de。
Reaksi pertama saya selepas membaca senarai ini ialah: Mozilla dan Opera sungguh menakjubkan. Hanya satu peraturan akan berkuat kuasa pada versi tertua Opera, jadi apabila kita bercakap tentang peraturan tersembunyi nanti, kita pada dasarnya mengabaikan Mozilla dan Opera . Di bawah disenaraikan sembilan gerakan "Teknik Pedang " ini, dengan acara penggunaan yang disyorkan secara peribadi saya turut dicatatkan di sebelahnya. Ambil perhatian bahawa apa yang saya cadangkan mungkin tidak semestinya sepadan dengan keperluan anda Sila rujuk jadual di atas sebelum digunakan.
<span lang="en" style="FONT-SIZE: 12pt">@import url("global.css")<code><span lang="en" style="FONT-SIZE: 12pt">@import url("global.css")</span>
Sembunyikan peraturan untuk penyemak imbas dengan versi lama (nombor versi kurang daripada 5).
<span lang="en" style="FONT-SIZE: 12pt">url@import(global.css)<code><span lang="en" style="FONT-SIZE: 12pt">@import url(global.css)</span>
Sembunyikan peraturan untuk penyemak imbas dengan versi lama platform Windows (nombor versi kurang daripada 5).
<span lang="en" style="FONT-SIZE: 12pt">@import "global.css"<code><span lang="en" style="FONT-SIZE: 12pt">@import "global.css"</span>
Sembunyikan peraturan untuk penyemak imbas dengan versi lama platform Windows (nombor versi kurang daripada 5).
<span lang="en" style="FONT-SIZE: 12pt"><link href="global.css" type="text/css" rel="stylesheet" media="all"/> ;<CODE><SPAN lang=en style="FONT-SIZE: 12pt"><link href="global.css" type="text/css" rel="stylesheet" media="all"/></span>
Sembunyikan peraturan untuk Netscape 4.x.
<span lang="en">@media all {<p></p></span>
<span lang="en">... /* </span>需要隐藏的规则<span lang="en"> */<p></p></span>
<span lang="en">}<p></p></span>
Jika anda hanya mempertimbangkan NN dan IE, anda hanya akan menyembunyikan peraturan untuk versi 4.x.
<span lang="en" style="FONT-SIZE: 12pt">#anySelector/* */ { color:#f00;
<code><span lang="en" style="FONT-SIZE: 12pt">#anySelector/* */ { color:#f00; }</span>
Ini adalah peluru berpandu berpandu ketepatan. Hanya sembunyikan peraturan untuk
IE5 dan ke bawah. Jadi, jika anda ingin mentakrifkan peraturan secara berasingan untuk IE5 dan IE5.5, kemudian bergantung padanya.
<span lang="en" style="FONT-SIZE: 12pt">p[id] { color: #<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="0" unitname="F">0f</chmetcnv>0;
</span>
<span lang="en" style="FONT-SIZE: 12pt">p[id] { color: #<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="0" unitname="F">0f</chmetcnv>0; }</span>
. Untuk mendapatkan maklumat lanjut tentang pemilih atribut, lihat dokumentasi
W3C .
<span lang="en" style="FONT-SIZE: 12pt">p>span { color: #<chmetcnv w:st="on" tcsc="0" numbertype="1" negative=" False" hasspace="False" sourcevalue="0" unitname="F">00f</chmetcnv>; }</span>
<span lang="en" style="FONT-SIZE: 12pt">p>span { color: #<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue="0" unitname="F">00f</chmetcnv>; }</span>
pada platform
Mac menyokong peraturan ini.
<span lang="en">p#tantek {<p></p></span>
<span lang="en"><span style="mso-spacerun: yes"> </span>voice-family: "\"}\""; /* </span>某些浏览器有解析<span lang="en">bug */<p></p></span>Helah penyembunyian terkenal
<span lang="en"><span style="mso-spacerun: yes"> </span>voice-family: inherit; /* </span>在这以下的规则都会被忽略<span lang="en"> */<p></p></span>CSS
<span lang="en"><span style="mso-spacerun: yes"> </span>color: #f00;<p></p></span>untuk semua
<span lang="en">}<p></p></span>“
bukan moden” peraturan menyembunyikan penyemak imbas