前端笔试面试
1. 瀏覽器頁面有哪三層構成,分別是什么,作用是什么?
- 構成:結構層、表示層、行為層?
- 分別是:HTML、CSS、JavaScript?
- 作用:HTML實現頁面結構,CSS完成頁面的表現與風格,JavaScript實現一些客戶端的功能與業務。
2. HTML5的優點與缺點?
- 優點:
- a、網絡標準統一、HTML5本身是由W3C推薦出來的。
- b、多設備、跨平臺?
- c、即時更新。
- d、提高可用性和改進用戶的友好體驗;
- e、有幾個新的標簽,這將有助于開發人員定義重要的內容;?
- f、可以給站點帶來更多的多媒體元素(視頻和音頻);???
- g、可以很好的替代Flash和Silverlight;
- ? ? ? ?h、涉及到網站的抓取和索引的時候,對于SEO很友好;?
- i、被大量應用于移動應用程序和游戲。?
- 缺點:
- a、安全:像之前Firefox4的web socket和透明代理的實現存在嚴重的安全問題,同時web storage、web socket 這樣的功能很容易被黑客利用,來盜取用戶的信息和資料。?
- b、完善性:許多特性各瀏覽器的支持程度也不一樣。?
- c、技術門檻:HTML5簡化開發者工作的同時代表了有許多新的屬性和API需要開發者學習,像web worker、web socket、web storage 等新特性,后臺甚至瀏覽器原理的知識,機遇的同時也是巨大的挑戰?
- d、性能:某些平臺上的引擎問題導致HTML5性能低下。?
- e、瀏覽器兼容性:最大缺點,IE9以下瀏覽器幾乎全軍覆沒。
3. Doctype作用? 嚴格模式與混雜模式如何區分?它們有何意義?
答案一:
- 聲明位于文檔中的最前面,處于標簽之前。告知瀏覽器的解析器,用什么文檔類型 規范來解析這個文檔。?
- 嚴格模式的排版和JS 運作模式是以該瀏覽器支持的最高標準運行。?
- 在混雜模式中,頁面以寬松的向后兼容的方式顯示。模擬老式瀏覽器的行為以防止站點無法工作。? ? ? ? ? ? ? ?
- DOCTYPE不存在或格式不正確會導致文檔以混雜模式呈現。?
答案二
?doctype聲明指出閱讀程序應該用什么規則集來解釋文檔中的標記。在Web文檔的情況下,“閱讀程序”通常是瀏覽器或者校驗器這樣的一個程序,“規則”則是W3C所發布的一個文檔類型定義(DTD)中包含的規則。
- 聲明位于文檔中的最前面的位置,處于標簽之前。此標簽可告知瀏覽器文檔使用哪種 HTML 或 XHTML 規范。該標簽可聲明三種 DTD 類型,分別表示嚴格版本、過渡版本以及基于框架的HTML 文檔。?
- 所謂的標準模式是指,瀏覽器按 W3C 標準解析執行代碼;怪異模式則是使用瀏覽器自己的方式解析執行代碼,因為不同瀏覽器解析執行的方式不一樣,所以我們稱之為怪異模式。 嚴格模式是瀏覽器根據web標準去解析頁面,是一種要求嚴格的DTD,不允許使用任何表現層的語法。嚴格模式的排版和JS 運作模式是以該瀏覽器支持的最高標準運行混雜模式則是一種向后兼容的解析方法,說的透明點就是可以實現IE5.5以下版本瀏覽器的渲染模式。?
- 瀏覽器解析時到底使用標準模式還是怪異模式,與你網頁中的 DTD 聲明直接相關, DTD 聲明定義了標準文檔的類型(標準模式解析)文檔類型,會使瀏覽器使用相應的方式加載網頁并顯示,忽略 DTD 聲明 ,將使網頁進入怪異模式。
4. HTML5有哪些新特性、移除了哪些元素?
Html5新增了?27?個元素,廢棄了?16?個元素,根據現有的標準規范,把?HTML5?的元素按優先級定義為結構性屬性、級塊性元素、行內語義性元素和交互性元素?4?大類。
結構性元素主要負責web上下文結構的定義
- section:在?web?頁面應用中,該元素也可以用于區域的章節描述。
- header:頁面主體上的頭部,?header?元素往往在一對?body?元素中。
- footer:頁面的底部(頁腳),通常會標出網站的相關信息。
- nav:專門用于菜單導航、鏈接導航的元素,是?navigator?的縮寫。
- article:用于表現一篇文章的主體內容,一般為文字集中顯示的區域。
- 級塊性元素主要完成web頁面區域的劃分,確保內容的有效分割。
- aside:用于表達注記、貼士、側欄、摘要、插入的引用等作為補充主體的內容。
- figure:是對多個元素進行組合并展示的元素,通常與?ficaption?聯合使用。
- code:表示一段代碼塊。
- dialog:用于表達人與人之間的對話,該元素包含?dt?和?dd?這兩個組合元素,?dt?用于表示說話者,而?dd?用來表示說話內容。
- 行內語義性元素主要完成web頁面具體內容的引用和描述,是豐富內容展示的基礎。
- meter:表示特定范圍內的數值,可用于工資、數量、百分比等。
- time:表示時間值。
- progress:用來表示進度條,可通過對其?max?、?min?、?step?等屬性進行控制,完成對進度的表示和監事。
- video:視頻元素,用于支持和實現視頻文件的直接播放,支持緩沖預載和多種視頻媒體格式。
- audio:音頻元素,用于支持和實現音頻文件的直接播放,支持緩沖預載和多種音頻媒體格式。
- 交互性元素主要用于功能性的內容表達,會有一定的內容和數據的關聯,是各種事件的基礎。
- details:用來表示一段具體的內容,但是內容默認可能不顯示,通過某種手段(如單擊)與?legend?交互才會顯示出來。
- datagrid:用來控制客戶端數據與顯示,可以由動態腳本及時更新。
- menu:主要用于交互菜單(曾被廢棄又被重新啟用的元素)。
- command:用來處理命令按鈕。
jQuery中,修改樣式的兩種方法:
.css
.addClass
轉載于:https://www.cnblogs.com/writerW/p/8990700.html
總結
- 上一篇: 编程之协程
- 下一篇: java基础 第九章(设计模式 单例