我正在調整一個網站,使其與IE7的工作,並想知道:所有這些IE黑客從哪裏來?什麼是IE瀏覽器CSS黑客的起源?
事情是我無法想象一個人說「是的,我們不會實施display: inline-block
,但*display: inline
將工作」。
這對我沒有意義。那麼誰創造了這些黑客?有人發明他們作爲一些不起作用的物業的替代品,或者這是純粹的運氣,這可以工作嗎?
PS:我理解,如果你想關閉這個問題,因爲偏離主題或別的東西,但是如果你至少有一個關於該鏈接或東西,我將不勝感激:)
我正在調整一個網站,使其與IE7的工作,並想知道:所有這些IE黑客從哪裏來?什麼是IE瀏覽器CSS黑客的起源?
事情是我無法想象一個人說「是的,我們不會實施display: inline-block
,但*display: inline
將工作」。
這對我沒有意義。那麼誰創造了這些黑客?有人發明他們作爲一些不起作用的物業的替代品,或者這是純粹的運氣,這可以工作嗎?
PS:我理解,如果你想關閉這個問題,因爲偏離主題或別的東西,但是如果你至少有一個關於該鏈接或東西,我將不勝感激:)
的黑客工作的原因是瀏覽器實現中的變體和錯誤,主要是在舊版本的Internet Explorer中。
許多黑客圍繞不尋常的反應選擇不尋常的組合。常常使用根據標準是非法的選擇器組合。由於標準沒有規定非法代碼應該如何工作,所以不同的瀏覽器對它做出了不同的反應,並且這用於針對特定的瀏覽器。
在示例*display: inline;
中,有一個錯誤處理實現和錯誤處理變體的組合。在IE中,inline
模式在其他瀏覽器中有點像inline-block
,在選擇器中使用星號會使其他瀏覽器忽略該規則。黑客將在舊版IE中應用display: inline;
,並讓其他瀏覽器使用display: inline-block;
規則。
我認爲他們把他們從兔子的屁股中拉出來。或者它是一頂帽子,我忘了...... – 2013-03-08 09:36:22
http://www.456bereastreet.com/archive/200512/the_history_of_css_hacks/ 我想我回想起幾年前以人名命名的幾個CSS黑客,當我必須支持IE6。我認爲他們是由各種各樣的開發人員發現/發佈的...... – 2013-03-08 09:39:55