HTML5是什么?有哪些新特性?有哪些新增標簽?如何讓低版本的 IE 支持 HTML5新標簽
- HTML5是超文本標記語言的第五次重大修改
-
新特性
- 語義特性
- 本地存儲特性
- 設備兼容特性
- 連接特性
- 網頁多媒體特性
- 性能與集成特性
- CSS3特性
新增標簽:
section
,video
,progress
,nav
,meter
,time
,aside
,canvas
,command
,datalist
,details
,embed
,figcaption
,figure
,footer
,header
,hgroup
,keygen
,mark
,output
,rp
,rt
,ruby
,source
,summary
,wbr
HTML5標簽兼容
使用HTML5 shiv
<head>
<!--[if lt IE 9]>
<script src="http://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js">
</script>
<![endif]-->
</head>
input 有哪些新增類型?
- email類型:email類型的input元素是一種專門用于輸入E-mail地址的文本輸入框,在提交表單的時候,會自動驗證email輸入框的值
- url類型:url類型的input元素提供用于輸入url地址這類特殊文本的文本框
- number類型:number類型的input元素提供用于輸入數值的文本框
- range類型:range類型的input元素提供用于輸入包含一定范圍內數字值得文本框,在網頁中顯示為滾動條
- Date Picker類型:日期檢出類型的應用
- search類型:search類型的input元素提供用于輸入搜索關鍵詞的文本框
- tel類型:tel類型的input元素提供專門用于輸入電話號碼的文本框
- color類型:color類型的input元素提供專門用于設置顏色的文本框
瀏覽器本地存儲中 cookie 和 localStorage 有什么區別? localStorage 如何存儲刪除數據?
cookie
cookie的內容主要包括:名字,值,過期時間,路徑和域。路徑與域一起構成cookie的作用范圍。若不設置過期時間,則表示這個cookie的生命期為瀏覽器會話期間,關閉瀏覽器窗口,cookie就消失。這種生命期為瀏覽器會話期的cookie被稱為會話cookie。會話cookie一般不存儲在硬盤上而是保存在內存里,當然這種行為并不是規范規定的。若設置了過期時間,瀏覽器就會把cookie保存到硬盤上,關閉后再次打開瀏覽器,這些cookie仍然有效直到超過設定的過期時間。存儲在硬盤上的cookie可以在不同的瀏覽器進程間共享,比如兩個IE窗口。而對于保存在內存里的cookie,不同的瀏覽器有不同的處理方式。-
cookie的特點:
- cookie的大小受限制,cookie大小被限制在4KB,不能接受像大文件或郵件那樣的大數據。
- 只要有請求涉及cookie,cookie就要在服務器和瀏覽器之間來回傳送(這解釋為什么本地文件不能測試cookie)。而且cookie數據始終在同源的http請求中攜帶(即使不需要),這也是Cookie不能太大的重要原因。正統的cookie分發是通過擴展HTTP協議來實現的,服務器通過在HTTP的響應頭中加上一行特殊的指示以提示瀏覽器按照指示生成相應的cookie。
用戶每請求一次服務器數據,cookie則會隨著這些請求發送到服務器,服務器腳本語言如PHP等能夠處理cookie發送的數據,可以說是非常方便的。當然前端也是可以生成Cookie的,用js對cookie的操作相當的繁瑣,瀏覽器只提供
document.cookie
這樣一個對象,對cookie的賦值,獲取都比較麻煩。而在PHP中,我們可以通過setcookie()
來設置cookie,通過$_COOKIE
這個超全局數組來獲取cookie。localStorage
這是一種持久化的存儲方式,也就是說如果不手動清除,數據就永遠不會過期。
它也是采用Key - Value的方式存儲數據,底層數據接口是sqlite,按域名將數據分別保存到對應數據庫文件里。它能保存更大的數據(IE8上是10MB,Chrome是5MB),同時保存的數據不會再發送給服務器,避免帶寬浪費。-
localStorage的缺點
- localStorage大小限制在500萬字符左右,各個瀏覽器不一致
- localStorage在隱私模式下不可讀取
- localStorage本質是在讀寫文件,數據多的話會比較卡
- localStorage不能被爬蟲爬取,不要用它完全取代URL傳參
- localStorage.removeItem(key):清除鍵值為key的數據
- localStorage.clear():清除所有數據
寫出如下 CSS3效果的簡單事例
- 圓角, 圓形
- div 陰影
- 2D 轉換:放大、縮小、偏移、旋轉
- 3D 轉換:移動、旋轉
- 背景色漸變
- 過渡效果
- 動畫