繼上一篇文章中談到的表單自動填充問題解決後,接下來又遇到新的問題,就是頁面在IE下部分樣式顯示不正確。通過IE開發人員工具查看對應樣式存在,對照能夠正確顯示的本地html頁面,樣式基本相同,除了一些font樣式在開發人員工具中顯示的是font-size樣式,其他都一樣,包括導致樣式顯示不正確的margin樣式。最後還是通過開發人員工具中發現兩個頁面的文本模式不同,能夠正確顯示的頁面文本模式是標准模式,而顯示異常的頁面時雜項模式。
查看網頁源碼發現時因為異常的網頁是通過sitemesh進行裝飾的,而裝飾頁面沒有定義文本模式!DOCTYPE,導致浏覽器沒有通過標准模式解析網頁。
!文檔類型(英文簡稱!DOCTYPE,英文全稱DOCumentTYPE),一個!DOCTYPE是一種標准通用標記語言的文檔類型聲明,它的目的是要告訴標准通用標記語言解析器,它應該使用什麼樣的文檔類型定義(DTD)來解析文檔。它出現如該文件的第一行,並具有如下形式:
<!DOCTYPE html
PUBLIC "引用的字符串">
“引用的字符串”是被調用壹個公共標識符,它指的是所需的文檔類型定義(DTD)由一個“知名”的名字,通常是由一個相關的標准。[1]
可用性:
指定正式公開標識符(FPI)是可公開訪問的對象還是系統資源。
國際互聯網工程任務組(IETF)和萬維網聯盟(W3C)並非注冊的ISO組織。