1:HTML5是什么仅淑?有哪些新特性谎懦?有哪些新增標(biāo)簽悠反?如何讓低版本的 IE 支持 HTML5新標(biāo)簽
HTML5是超文本標(biāo)記語(yǔ)言的第五次重大修改,目的是為了在移動(dòng)設(shè)備上支持多媒體铺然。
HTML 5的新特性有:
- 新的解析規(guī)則增強(qiáng)了靈活性
- 新屬性
- 淘汰過(guò)時(shí)的或冗余的屬性
- 一個(gè)HTML5文檔到另一個(gè)文檔間的拖放功能
- 離線編輯
- 信息傳遞的增強(qiáng)
- 詳細(xì)的解析規(guī)則
- 多用途互聯(lián)網(wǎng)郵件擴(kuò)展(MIME)和協(xié)議處理程序注冊(cè)
- 在SQL數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù)的通用標(biāo)準(zhǔn)(Web SQL)
新增標(biāo)簽:
標(biāo)簽 | 定義 |
---|---|
canvas | 標(biāo)簽定義圖形疙渣,比如圖表和其他圖像撇吞。該標(biāo)簽基于 JavaScript 的繪圖 API |
audio | 定義音頻內(nèi)容 |
video | 定義視頻(video 或者 movie) |
source | 定義多媒體資源 <video> 和<audio> |
embed | 定義嵌入的內(nèi)容俗冻,比如插件 |
track | 為諸如 <video> 和 <audio> 元素之類的媒介規(guī)定外部文本軌道 |
datalist | 定義選項(xiàng)列表。與 input 元素配合使用該元素牍颈,來(lái)定義 input 可能的值 |
keygen | 規(guī)定用于表單的密鑰對(duì)生成器字段 |
output | 定義不同類型的輸出迄薄,比如腳本的輸出 |
article | 定義頁(yè)面正文內(nèi)容 |
aside | 定義頁(yè)面內(nèi)容之外的內(nèi)容 |
bdi | 設(shè)置一段文本,使其脫離其父元素的文本方向設(shè)置 |
command | 定義命令按鈕煮岁,比如單選按鈕讥蔽、復(fù)選框或按鈕 |
details | 用于描述文檔或文檔某個(gè)部分的細(xì)節(jié) |
dialog | 定義對(duì)話框,比如提示框 |
summary | 標(biāo)簽包含 details 元素的標(biāo)題 |
figure | 規(guī)定獨(dú)立的流內(nèi)容(圖像画机、圖表冶伞、照片、代碼等等) |
figcaption | 定義 <figure> 元素的標(biāo)題 |
footer | 定義 section 或 document 的頁(yè)腳 |
header | 定義了文檔的頭部區(qū)域 |
mark | 定義帶有記號(hào)的文本 |
meter | 定義度量衡步氏。僅用于已知最大和最小值的度量 |
nav | 導(dǎo)航 |
progress | 定義任何類型的任務(wù)的進(jìn)度 |
ruby | 定義 ruby 注釋(中文注音或字符) |
rt | 定義字符(中文注音或字符)的解釋或發(fā)音 |
rp | 在 ruby 注釋中使用碰缔,定義不支持 ruby 元素的瀏覽器所顯示的內(nèi)容 |
section | 定義文檔中的節(jié)(section、區(qū)段) |
time | 定義日期或時(shí)間 |
wbr | 規(guī)定在文本中的何處適合添加換行符 |
2:input 有哪些新增類型戳护?
新增的input類型:
type | 定義 |
---|---|
用于編輯 e-mail 的字段;在提交表單時(shí)金抡。 | |
url | 用于編輯URL的字段。 |
number | 用于輸入浮點(diǎn)數(shù)的控件腌且。 |
range | 用于輸入不精確值控件梗肝。 |
search | 用于輸入搜索字符串的單行文本字段。 |
color | 用于指定顏色的控件铺董。 |
tel | 用于輸入電話號(hào)碼的控件. |
time | 用于輸入不含時(shí)區(qū)的時(shí)間控件巫击。 |
datetime | 基于 UTC 時(shí)區(qū)的日期時(shí)間輸入控件(時(shí),分精续,秒及幾分之一秒)坝锰。 |
datetime-local | 用于輸入日期時(shí)間控件,不包含時(shí)區(qū)重付。 |
date | 用于輸入日期的控件(年顷级,月,日确垫,不包括時(shí)間)弓颈。 |
week | 用于輸入一個(gè)由星期-年組成的日期帽芽,日期不包括時(shí)區(qū)。 |
month | 用于輸入年月的控件翔冀,不帶時(shí)區(qū)导街。 |
3:瀏覽器本地存儲(chǔ)中 cookie 和 localStorage 有什么區(qū)別? localStorage 如何存儲(chǔ)刪除數(shù)據(jù)纤子。
特性 | Cookie | localStorage | sessionStorage |
---|---|---|---|
數(shù)據(jù)的生命期 | 可設(shè)置失效時(shí)間搬瑰,默認(rèn)是關(guān)閉瀏覽器后失效 | 除非被清除,否則永久保存 | 僅在當(dāng)前會(huì)話下有效控硼,關(guān)閉頁(yè)面或?yàn)g覽器后被清除 |
存放數(shù)據(jù)大小 | 4K左右 | 一般為5MB | 一般為5MB |
與服務(wù)器端通信 | 每次都會(huì)攜帶在HTTP頭中泽论,如果使用cookie保存過(guò)多數(shù)據(jù)會(huì)帶來(lái)性能問(wèn)題 | 僅在客戶端(即瀏覽器)中保存,不參與和服務(wù)器的通信 | 僅在客戶端(即瀏覽器)中保存象颖,不參與和服務(wù)器的通信 |
易用性 | 需要程序員自己封裝佩厚,源生的Cookie接口不友好 | 源生接口可以接受姆钉,亦可再次封裝來(lái)對(duì)Object和Array有更好的支持 | 源生接口可以接受说订,亦可再次封裝來(lái)對(duì)Object和Array有更好的支持 |
localStorage的使用
清空l(shuí)ocalStorage
localStorage.clear() // undefined
localStorage //Storage {length: 0} 存儲(chǔ)數(shù)據(jù)
存儲(chǔ)數(shù)據(jù)
localStorage.setItem("name","caibin") //存儲(chǔ)名字為name值為caibin的變量
localStorage.name = "caibin"; // 等價(jià)于上面的命令
localStorage // Storage{name: "caibin", length: 1} 讀取數(shù)據(jù)
讀取數(shù)據(jù)
localStorage.getItem("name") //caibin,讀取保存在localStorage對(duì)象里名為name的變量的值
localStorage.name // "caibin"
localStorage.valueOf() //讀取存儲(chǔ)在localStorage上的所有數(shù)據(jù)
localStorage.key(0) // 讀取第一條數(shù)據(jù)的變量名(鍵值)
//遍歷并輸出localStorage里存儲(chǔ)的名字和值
for(var i=0; i<localStorage.length;i++){
console.log('localStorage里存儲(chǔ)的第'+i+'條數(shù)據(jù)的名字為:'+localStorage.key(i)+',值為:'+localStorage.getItem(localStorage.key(i)));
}
刪除某個(gè)變量
localStorage.removeItem("name"); //undefined
localStorage // Storage {length: 0} 可以看到之前保存的name變量已經(jīng)從localStorage里刪除了
檢查localStorage里是否保存某個(gè)變量
// 這些數(shù)據(jù)都是測(cè)試的,是在我當(dāng)下環(huán)境里的潮瓶,只是demo哦~
localStorage.hasOwnProperty('name') // true
localStorage.hasOwnProperty('sex') // false
將數(shù)組轉(zhuǎn)為本地字符串
var arr = ['aa','bb','cc']; // ["aa","bb","cc"]
localStorage.arr = arr //["aa","bb","cc"]
localStorage.arr.toLocaleString(); // "aa,bb,cc"
將JSON存儲(chǔ)到localStorage里
var students = {
xiaomin: {
name: "xiaoming",
grade: 1
},
teemo: {
name: "teemo",
grade: 3
}
}
students = JSON.stringify(students); //將JSON轉(zhuǎn)為字符串存到變量里
console.log(students);
localStorage.setItem("students",students);//將變量存到localStorage里
var newStudents = localStorage.getItem("students");
newStudents = JSON.parse(students); //轉(zhuǎn)為JSON
console.log(newStudents); // 打印出原先對(duì)象
4:寫(xiě)出如下 CSS3效果的簡(jiǎn)單事例
1\. 圓角陶冷, 圓形
2\. div 陰影
3\. 2D 轉(zhuǎn)換:放大、縮小毯辅、偏移埂伦、旋轉(zhuǎn)
4\. 3D 轉(zhuǎn)換:移動(dòng)、旋轉(zhuǎn)
5\. 背景色漸變
6\. 過(guò)渡效果
7\. 動(dòng)畫(huà)