題目1: HTML5是什么?有哪些新特性?有哪些新增標簽?如何讓低版本的 IE 支持 HTML5新標簽
HTML5是什么?
HTML5是HTML最新的修訂版本,2014年10月由萬維網聯盟(W3C)完成標準制定。
HTML5的設計目的是為了在移動設備上支持多媒體。
HTML5 中的一些有趣的新特性:
- 用于繪畫的 canvas 元素
- 用于媒介回放的 video 和 audio 元素
- 對本地離線存儲的更好的支持
- 新的特殊內容元素,比如 article、footer、header、nav、section
- 新的表單控件,比如 calendar、date、time、email、url、search
新增標簽
- <article>標簽定義一個獨立完整的內容,比如一篇文章
- <aside>標簽定義獨立于主內容的區塊,比如一個組件
- <footer> 標簽定義 section 或頁面的尾部內容
- <section> 標簽定義文檔中的一個章節,比如產品介紹部分
- <nav> 標簽定義導航部分
- <header> 標簽定義 section 或頁面的頭部
- <hgroup> 標簽一般包括一個H加一個P標簽
- <figure>與<figcaption>一般包括一張img及圖片介紹
- <audio> 標簽定義聲音
- <video> 標簽定義視頻
- <canvas> 標簽定義圖形,可以繪制矢量圖形
- <command> 標簽定義命令按鈕,比如單選按鈕、復選框或按鈕
- <datalist> 標簽定義可選數據的列表。與 input 元素配合使用。但一般多使用ajax與后端交互實現
- <embed> 標簽定義嵌入的內容,比如插件
- <mark>標簽主要用來在視覺上向用戶呈現那些需要突出的文字,一般用于高亮顯示結果
- <source> 標簽為媒介元素(比如 <video> 和 <audio>)定義媒介資源
- <time> 標簽定義日期或時間,或者兩者
有實例的學習網站
Internet Explorer 8 及更早 IE 版本的瀏覽器不支持HTML5。
我們可以使用 Sjoerd Visscher 創建的 "HTML5 Enabling JavaScript", " shiv" 來解決該問題:
將以下代碼放在<head>
中
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
題目2: input 有哪些新增類型?
- color:用于指定顏色的控件。
- date:用于輸入日期的控件(年,月,日,不包括時間)。
- datetime:基于 UTC 時區的日期時間輸入控件(時,分,秒及幾分之一秒)。
- datetime-local:用于輸入日期時間控件,不包含時區。
- email:用于編輯 e-mail 的字段。 合適的時候可以使用:valid和 :invalid CSS 偽類。
- month:用于輸入年月的控件,不帶時區。
- number: 用于輸入浮點數的控件。
- search:用于輸入搜索字符串的單行文本字段。換行會被從輸入的值中自動移除。
詳細實例介紹
題目3: 瀏覽器本地存儲中 cookie 和 localStorage 有什么區別? localStorage 如何存儲刪除數據。
cookie 和 localStorage的存儲目的不同。cookie主要是讀取服務端,localStorage只能被瀏覽器這樣的客戶端讀取。
兩者在技術上的差異主要為:
cookie的每個cookie只有 4096 bytes ,而localStorage的每個域可以達到5MB
localStorage Storage接口的實現,它沒有到期時間,可以通過JavaScript來清除,或者通過清除瀏覽器緩存(Browser Cache )/本地存儲數據(Locally Stored Data)來清除。
localStorage.setItem()設置數據項
localStorage.getItem()獲取數據項
localStorage.setItem('age', '99');//寫入
localStorage.getItem('age');//讀取
sessionStorage 、localStorage 和 cookie 之間的區別
共同點:都是保存在瀏覽器端,且同源的。
區別:cookie數據始終在同源的http請求中攜帶(即使不需要),即cookie在瀏覽器和服務器間來回傳遞;cookie數據還有路徑(path)的概念,可以限制cookie只屬于某個路徑下。存儲大小限制也不同,cookie數據不能超過4k,同時因為每次http請求都會攜帶cookie,所以cookie只適合保存很小的數據,如會話標識。
而sessionStorage和localStorage不會自動把數據發給服務器,僅在本地保存。sessionStorage和localStorage 雖然也有存儲大小的限制,但比cookie大得多,可以達到5M或更大。
數據有效期不同,sessionStorage:僅在當前瀏覽器窗口關閉前有效,自然也就不可能持久保持;localStorage:始終有效,窗口或瀏覽器關閉也一直保存,因此用作持久數據;cookie只在設置的cookie過期時間之前一直有效,即使窗口或瀏覽器關閉。
作用域不同,sessionStorage不在不同的瀏覽器窗口中共享,即使是同一個頁面;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。Web Storage 支持事件通知機制,可以將數據更新的通知發送給監聽者。Web Storage 的 api 接口使用更方便。
參考文章
參考文章
題目4: 寫出如下 CSS3效果的簡單事例
1. 圓角, 圓形 2. div 陰影 3. 2D 轉換:放大、縮小、偏移、旋轉 4. 3D 轉換:移動、旋轉 5. 背景色漸變 6. 過渡效果 7. 動畫