2008 06月 20日 二零零八年
如果你曾經使用(或一)垂直菜單列表項(李)標記和CSS,你可能遇到的又一錯誤在IE瀏覽器,IE 6之間插入列表項包含塊級元素,這些差距,也就是說,如果有任何標記列表項之間的空白。 謝謝,但沒有感謝,免費版本的IE 7似乎從這個錯誤。
如果像我,更多的人,你屬於這一帶失意的開發商,還必須得到他們的新佈局,工作壓力太大在IE6,那麼這可能證明是有用的。 看看...
樣品的標記 :
<ul id="menu">
<li> <a href="#">首頁</ A> </ LI>
<li> <a href="#">關於</ A> </ LI>
<li> <a href="#">服務</ A> </ LI>
<li> <a href="#">組合</ A> </ LI>
<li> <a href="#">幫助</ A> </ LI>
<li> <a href="#">聯繫我們</ A> </ LI>
</ UL>
您可以創建一些CSS,類似一以下,transfrom到一個垂直的菜單,上面的標記......
示例CSS ...
#菜單{
保證金:0:0;背景:#FF9900;
列表樣式類型:無;寬度:150像素;
}
#菜單李{保證金:0;填充:0;}
#菜單的{顯示:塊;
顏色:#555555;
文字裝飾:無;
填充:0均為15px;
線高度:2.5;邊境底:1px固體#足協;
}
你會看到的結果...
解這個錯誤......(修改/添加CSS粗體斜體)
#菜單{
保證金:0:0;背景:#FF9900;列表樣式類型:無;寬度:150像素;
浮動:左; / *這包含浮動的列表項* /
}
#菜單李{
保證金:0;填充:0;
浮動:左; / *修復* /
寬度:100%; / *在IE6的空白錯誤* /
}
#菜單{
顯示:塊;顏色:#555555;
文字裝飾:無;
填充:0均為15px;
線高度:2.5;邊境底:1px固體#足協;
}
如果上述解決方案亙古不變的似乎工作(IE6的唯一原因)...嘗試這種方法,而不是
只需添加額外的IE6的唯一樣式標記...
<! - [如果它的IE 7>
<style type="text/css">
#菜單裡的{顯示:內聯塊;}
#菜單裡的{顯示:塊;}
</ STYLE>
<[ENDIF] - >
沒有評論 |標籤: IE瀏覽器錯誤 , IE修復 , IE瀏覽器黑客 , IE瀏覽器的問題 , IE6 , 教程 |在發布的瀏覽器怪癖 , CSS
2008 6 月 6 二零零八年
在頁面上的DOM元素,慢呈現,慢的是在JavaScript的DOM訪問。 一個DOM元素的高,可能是由於不良的佈局設計。 例如,嵌套表可能已被用於佈局的目的。 使用任何HTML標籤的地方是情理之中的語義。 例如DONOT使用佈局表,但DONOT毫不猶豫地使用他們,你必須顯示表格數據,因此將使用減少DOM元素,相比之下,使用DIV的只是創建一個類似的結構......
來測試你的HTML頁面中的DOM元素的數量,只是在Firebug的控制台鍵入以下內容: document.getElementsByTagName('*').length
有沒有多少DOM元素太多的設置標準。 檢查其他有良好markup.Eg的類似網頁。 雅虎主頁是一個非常繁忙的頁面,並仍在700個元素(HTML標籤)。
沒有評論 |標籤: 最佳實踐 , DOM |發布最佳實踐 , 用戶界面Desgin
2008 6月 2 二零零八年
Ajax請求使用GET
人們已經發現,使用XMLHttpRequest時,發表在瀏覽器中實現的一個兩步的過程:發送的頭,然後再發送數據。 所以最好使用GET,只需要一個TCP包發送(除非你有大量的餅乾)。 在IE的最大URL長度是2K,因此,如果您發送超過2K的數據,你可能無法使用GET。
一個有趣的側面影響,實際上不張貼任何數據的行為,如GET POST。 得到的是信息檢索的含義,所以它才有意義(語義)當你只要求數據發送到服務器端存儲的數據,而不是使用。
避免同步Ajax調用
“阿賈克斯”的要求時,你可以選擇異步或同步模式。 異步模式運行在後台的要求,而其他瀏覽器的活動可以繼續處理。 同步模式將等待請求返回,然後再繼續。
應避免與同步模式提出的要求。 這些要求將導致瀏覽器,直至鎖定為用戶要求退貨。 服務器忙的情況下,反應需要一段時間,用戶的瀏覽器(也許操作系統)將不允許做別的。 在一個反應是沒有正確接收的情況下,瀏覽器可能會繼續阻塞,直到請求超時。
如果您認為您的情況需要同步模式,它是最有可能的時間來重新考慮你的設計。 實際上很少(如果有的話)的情況下需要同步模式的Ajax請求。
1條評論 |標籤: AJAX , 最佳實踐 |在發布的AJAX , 最佳實踐 , 用戶界面Desgin