最近項目裏用到了struts2裏的jqGrid插件,有個很奇怪的問題找了好長時間,好比:字體樣式修改不了的問題,具體描述請參考附件圖片,包含有問題的和修改後的對比圖(je不能直接插入本體圖片啊)css
就是grid的表頭和內容字體樣式不能修改,一直是缺省的16px大小和加粗的,而且分頁顯示也很彆扭html
後來找了好長時間發現是由於個人頁面<!DOCTYPE 定義有問題,jqGrid支持過渡型的申明,也支持嚴格型的申明,否則某些時候jqGrid自帶的css就會有問題,好比ui.jqgrid.css裏定義的字體大小有可能不能控制頁面裏的全部字體大小.....瀏覽器
這是我以前的申明:框架
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 不能正常顯示CSS字體
這是修改後的申明:ui
嚴格型XHTMLspa
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">插件
或是過渡性XHTMLhtm
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">blog
其餘的例如HTML的:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd">
也行,後來發現只要是加了dtd定義的都能正常顯示
建議用過渡型XHTML
如下是w3cschool裏的對doctype的解釋:
HTML <!DOCTYPE> 標籤
<!DOCTYPE> 聲明位於文檔中的最前面的位置,處於 <html> 標籤以前。此標籤可告知瀏覽器文檔使用哪一種 HTML 或 XHTML 規範。
該標籤可聲明三種 DTD 類型,分別表示嚴格版本、過渡版本以及基於框架的 HTML 文檔。
如下面這個 <!DOCTYPE> 標籤爲例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">在上面的聲明中,聲明瞭文檔的根元素是 html,它在公共標識符被定義爲 "-//W3C//DTD XHTML 1.0 Strict//EN" 的 DTD 中進行了定義。瀏覽器將明白如何尋找匹配此公共標識符的 DTD。若是找不到,瀏覽器將使用公共標識符後面的 URL 做爲尋找 DTD 的位置。
註釋:<!DOCTYPE> 標籤沒有結束標籤!
HTML 4.01 規定了三種文檔類型:Strict、Transitional 以及 Frameset。
HTML Strict DTD若是您須要乾淨的標記,免於表現層的混亂,請使用此類型。請與層疊樣式表(CSS)配合使用:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd"> HTML Transitional DTDTransitional DTD 可包含 W3C 所指望移入樣式表的呈現屬性和元素。若是您的讀者使用了不支持層疊樣式表(CSS)的瀏覽器以致於您不得不使用 HTML 的呈現特性時,請使用此類型:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd"> Frameset DTDFrameset DTD 應當被用於帶有框架的文檔。除 frameset 元素取代了 body 元素以外,Frameset DTD 等同於 Transitional DTD:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" " http://www.w3.org/TR/html4/frameset.dtd">XHTML 1.0 規定了三種 XML 文檔類型:Strict、Transitional 以及 Frameset。
XHTML Strict DTD若是您須要乾淨的標記,免於表現層的混亂,請使用此類型。請與層疊樣式表(CSS)配合使用:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> XHTML Transitional DTDTransitional DTD 可包含 W3C 所指望移入樣式表的呈現屬性和元素。若是您的讀者使用了不支持層疊樣式表(CSS)的瀏覽器以致於您不得不使用 XHTML 的呈現特性時,請使用此類型:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> XHTML Frameset DTD當您但願使用框架時,請使用此 DTD!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">如需檢查你是否編寫了帶有正確 DTD 的合法 XHTML 文檔,您能夠把您的 XHTML 頁面連接到一個 XHTML 驗證器。
屬性:無