2009-08-05 146 views
0

我正在寫一些涉及CSS選項卡的代碼,但IE不支持:target css3屬性。我通過檢查間隔(ew)中的哈希值來解決問題,但我只想在下列情況下運行該代碼:target不受支持。我會做常規IE檢查,除了早期版本的Firefox不支持它,早期的Safari或Opera也不支持。有誰知道如何測試:目標支持?JS測試:目標支持

回答

1

您可以通過添加#someid:target { visibility:hidden; color:#abcdef; }之類的規則,然後將目標設置爲#someid,讀取顏色是否爲#abcdef,然後重置散列來測試CSS支持。

但是,這將在瀏覽器歷史記錄中生成條目:1用於導航到ID時,1用於當您將其重置爲之前的任何內容時。它也可能在你的標籤中產生閃爍,所以這可能不是理想的 - 但我不知道你能逃脫什麼。

理想情況下,製表符理想情況下應讀取和寫入書籤的散列。但我不認爲:target是創建標籤的理想解決方案。我知道它看起來很有吸引力(did to me)。由於選擇器的支持很差,它的嵌套或多個選項卡有多大,以及其他標記如何變化(有人在頁面上添加了一個#跳轉鏈接),所以使用良好的舊點擊實現起來並不令人頭疼。

+0

是的,這就是我所害怕的。我想我可能會操縱哈希,所以你可以鏈接到標籤,但不要依賴他們的顯示(閱讀「CSS」)。 – psayre23 2009-08-07 19:35:23