瀏覽器核心 ( 現代4大核心 )
trident 代表作:ie
gecko 代表作:mozilla
webkit : 蘋果 & 谷歌舊版本
blink : 代表作:谷歌 & 歐鵬
css bug、css hack和filter
• css bug: css樣式在各瀏覽器中解析不一致的情況,或者說css樣式在瀏覽器中不能正確顯示的問題稱為css bug.
• css hack: css中,hack是指一種相容css在不同瀏覽器中正確顯示的技巧方法,因為它們都屬於個人對css**的
非官方的修改,或非官方的補丁。有些人更喜歡使用patch(補丁)來描述這種行為。
• filter:表示過濾器的意思,它是一種對特定的瀏覽器或瀏覽器組顯示或隱藏規則或宣告的方法。
本質上講,filter是一種用來過濾不同瀏覽器的hack類
常見的bug
ie低版本常見css解析bug及hack
1)有邊框bug
當加在ie上會出現邊框
hack:給加border:0;或者border:0 none;
2)間隙
div中的間隙bug
描述:在div中插入時,會將div下方撐大大約三畫素。
hack1:將
與寫在一行上;
hack2:將
轉為塊狀元素,給
新增宣告:display:block;
3) 雙倍浮向(雙倍邊距)(只有ie6出現)
描述:當ie6及更低版本瀏覽器在解析浮動元素時,會錯誤地把浮向邊邊界(margin)加倍顯示。
hack:給浮動元素新增宣告:display:inline;
4)預設高度(ie6、ie7)
描述:在ie6及以下版本中,部分塊元素擁有預設高度(在16px左右;)
hack1:給元素新增宣告:font-size:0;
hack2:給元素新增宣告:overflow:hidden;
非ie bug
5)表單元素對齊不一致
描述:表單元素行高對齊方式不一致
hack:給表單元素新增宣告:float:left;
6)按鈕元素預設大小不一
描述:各瀏覽器中按鈕元素大小不一致
hack1: 統一大小/(用a標記模擬)
hack2:input外邊套乙個標籤,在這個標籤裡寫按鈕的樣式,把input的邊框去掉。
hack3:如果這個按鈕是乙個,直接把作為按鈕的背景圖即可。
7)滑鼠指標bug
描述:cursor屬性的hand屬性值只有ie9以下瀏覽器識別,其它瀏覽器不識別該宣告,
cursor屬性的pointer屬性值ie6.0以上版本及其它核心瀏覽器都識別該宣告。
hack: 如統一某元素滑鼠指標形狀為手型,
cursor: ;
auto預設
crosshair加號
text文字
wait等待
help幫助
progress過程
inherit繼承
move移動
ne-resize向上或向右移動
pointer手形
8)透明屬性
相容其他瀏覽器寫法:opacity:value;(value的取值範圍0-1;例:opacity:0.5;)
ie瀏覽器寫法:filter:alpha(opacity=value);取值範圍 1-100(整數)
過濾器
1. 下劃線屬性過濾器
當在乙個屬性前面增加了乙個下劃線後,由於符合標準的瀏覽器不能識別帶有下劃線的屬性
而忽略了這個宣告,但是在ie6及更低版本瀏覽器中會繼續解析這個規則。
語法:選擇符
2. !important關鍵字過濾器
它表示所附加的宣告具有最高優先順序的意思。但由於ie6及更低版本不能識別它,
我們可以利用ie6的這個bug作為過濾器來相容ie6和其它標準瀏覽器。
語法:選擇符
3. *屬性過濾器
當在乙個屬性前面增加了*後,該屬性只能被ie7瀏覽器識別,其它瀏覽器忽略該屬性的作用。
語法:選擇符
4. \9 :ie版本識別;其它瀏覽器都不識別
語法:選擇符
5. \0 : ie8 及以上版本識別;其它瀏覽器都不識別
優化
微信瀏覽器input常見問題
一 ios端相容input游標高度 input輸入框游標,在安卓手機上顯示沒有問題,但是在蘋果手機上 當點選輸入的時候,游標的高度和父盒子的高度一樣。原因 通常我們習慣用height屬性設定行間的高度和line height屬性設定行間的距離 行高 當點選輸入的時候,游標的高度就自動和父盒子的高度一...
常見瀏覽器 瀏覽器核心
常見瀏覽器介紹 瀏覽器是網頁執行的平台,常用的瀏覽器有ie 火狐 firefox 谷歌 chrome safari和opera等。我們平時稱為五大瀏覽器。瀏覽器核心 理解 瀏覽器核心又可以分成兩部分 渲染引擎 layout engineer 或者 rendering engine 和 js 引擎。渲...
Chrome瀏覽器常見問題及解決方案集錦
chrome是一款非常優秀的瀏覽器,尤其在網頁除錯方面出類拔萃,深得本人的喜歡。但是在使用的過程中,總有一些問題會困擾大家,現將一些常見問題及解決方案列舉出來,供參考。1.chrome下遇到該網頁已遮蔽外掛程式adobe flash player的解決辦法 適合以下情形 1 確定在電腦上確實已經安裝...