優(yōu)點:a、網(wǎng)絡(luò)標準統(tǒng)一、HTML5本身是由W3C推薦出來的。
創(chuàng)新互聯(lián)公司10多年成都企業(yè)網(wǎng)站定制服務(wù);為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及高端網(wǎng)站定制服務(wù),成都企業(yè)網(wǎng)站定制及推廣,對垃圾桶等多個領(lǐng)域擁有多年建站經(jīng)驗的網(wǎng)站建設(shè)公司。
b、多設(shè)備、跨平臺
c、即時更新,提高可用性和改進用戶的友好體驗;
d、有幾個新的標簽,這將有助于開發(fā)人員定義重要的內(nèi)容;
e、可以給站點帶來更多的多媒體元素(視頻和音頻),可以很好的替代Flash和Silverlight;
f、涉及到網(wǎng)站的抓取和索引的時候,對于SEO很友好;
缺點: a、安全:像之前Firefox4的web socket和透明代理的實現(xiàn)存在嚴重的安全問題,同時web storage、web socket 這樣的功能很容易被黑客利用,來盜取用戶的信息和資料。
b、完善性:許多特性各瀏覽器的支持程度也不一樣。
c、技術(shù)門檻: html5簡化開發(fā)者工作的同時代表了有許多新的屬性和API需要開發(fā)者學(xué)習,想web worker、web socket、web storage等新特性要求對于后臺的技術(shù)需要有一定的了解,甚至需要深入了解其后面原理和邏輯,而canvas要求視覺和圖像算法的一些知識,傳統(tǒng)的前端開發(fā)者需要掌握更多算法、視覺、 后臺甚至瀏覽器原理的知識,機遇的同時也是巨大的挑戰(zhàn)
d、性能:某些平臺上的引擎問題導(dǎo)致html5性能低下,同時在不加入GPU(圖形處理器)加速的情況下,html5處理復(fù)雜音視頻, 動畫的性能不盡如人意。
e、瀏覽器兼容性:最大缺點,IE9以下瀏覽器幾乎全軍覆沒。
[img]一、文本標簽
1.1 標題標記:hn align=”對齊方式”標題文本/hn
注意:
1.標題準備了h1----h6的標題,按照字號依次遞減(塊級元素)
2.align表示對齊方式,其值為left,center,right
1.2 字體標記:font face=”字體名稱” size=”字號” color=”字體顏色” 文字/font
注意:中文網(wǎng)頁以黑體,宋體,3號字的效果顯示
1.3 段落標記:p align=”對齊方式” 段落內(nèi)容/p
注意:p可以作為單標記或雙標記:
單標記:段落與上文產(chǎn)生一個空行的間距。
雙標記:段落與上下文之間產(chǎn)生一個空行的間距
1.4 換行標記:
注意:br /表示換行,多次換行多次使用br /
1.5 預(yù)格式化標記:pre...../pre
注意:預(yù)格式化標記可將空格、制表符、回車符等忽略
1.6 轉(zhuǎn)義字符:轉(zhuǎn)義字符讓特殊字符顯示出來。
語法:實體名稱;
二、列表標記
2.1 無序列表
ul type=”列表項的標簽符”
li項目一/li
li項目二/li
li項目三/li
......
/ul
注意: type表示了項目符號:
disc(默認) 實心圓
circle:空心圓
square:實心方塊
2.2 有序列表:
ol type=”列表項的標記符” start=”起始值”
li項目一/li
li項目二/li
li項目三/li
......
/ol
注意:1. 1:1,2,3,.......
a:a,b,c,d,e.......
A:A,B,C,D,E.......
i:i,ii,iii,iv......
I:I,II,III,IV......
2.start表示起始值,從第幾個數(shù)開始計算
2.3 嵌套排列
ol type="1"
lih/li
lit/li
ul type="disc"
lim/li
lil/li
/ul
li5/li
/ol
2.4 分割線標記:hr align=”對齊方式” size=”水平線高度” width=”水平線寬度”
color=”水平線顏色”
三、超鏈接標記
3.1 文本鏈接:a href=”目標URL” target=”目標窗口”指針文本/a
注意: 1.href表示文本鏈接的目標資源的URL
絕對地址和相對地址
絕對地址:在任何情況下都可以找到的地址(例如:網(wǎng)址)
相對地址:必須知道當前所在,才能找到(../表示上一級目錄,/表示下級目錄)例子:../img/baidu.jpg 表示在當前位置的上一層目錄下的img文件夾中的baidu.jpg 文件。
3.2 圖片標記:img src=”圖片文件路徑” alt=”提示文本” height=”圖片高度” width=”圖片寬度”/
3.3 多媒體標記
3.3.1 滾動字幕標記:marquee可以實現(xiàn)文字或圖片的跑馬燈效果
marquee..../marquee
marquee的屬性:
behavior 指定了跑馬燈的效果:scroll(滾動)、slide(滑動)、alternate(交替)
bgcolor:跑馬燈的背景顏色
direction:跑馬燈的移動方向,left(左)、right(右)、up(上)、down(下)
scrolldelay:每次移動的延遲時間,單位毫秒
loop:跑馬燈運行次數(shù),-1表示無限循環(huán)
height、width
hspace:左右空白寬度
vspace:上下空白寬度
3.3.2 嵌入音樂文件
audio src=”文件地址” 提示文字/audio
3.3.3 嵌入視頻文件
video src=”視頻文件地址” controls=”controls”提示文字/video
四、表格
4.1 表格基本語法:
table
tr
......
td單元格內(nèi)容/td
......
/tr
/table
注意:
table:聲明一個表格對象
tr:聲明一行
td:聲明一個單元格
4.2 表格的基本屬性
1.align 對齊方式:left、center、right
2.border:表格邊框
3.bordercolor:邊框顏色
4.bgcolor:表格背景顏色
5.background:背景圖片
6.height、width
4.3 單元格合并
1.rowspan:所跨的行數(shù)
2.colspan:所跨的列數(shù)
五、表單
5.1 表單標簽:form action=”URL” method=”get|post” target=”...”/form
注意:form:該標記中包含的數(shù)據(jù)將被提交到服務(wù)器或者電子郵件中
action:指定服務(wù)器端處理提交表單信息的程序是什么。URL地址或電子郵件地址
method:get/post:數(shù)據(jù)傳輸?shù)椒?wù)器的傳遞方法
target:服務(wù)器返回文檔結(jié)果的顯示位置:_blank:在新的瀏覽器窗口中打開
_self:在當前瀏覽器中顯示
5.2 表單標記
5.2.1 input標簽:input type=”類型” name=”服務(wù)器 獲取用戶輸入信息的名字” value=”初始值”
注意:1.type類型(輸入類型):
1. text:單行文本框
2. password:密碼輸入框
3. radio:單選按鈕 checked表示默認
4. checkbox:復(fù)選框 checked表示默認
5. submit:提交按鈕
6. reset:重置按鈕
7. button:普通按鈕
2.maxlength:輸入的最大長度
5.2.2 select標簽
select name=”” size=”” multiple
option value=”選項1” 選項1
.......
option value=”選項n” 選項n
/select
注意:name:服務(wù)器 獲取用戶輸入信息的名字
value :初始值
option:下拉框的內(nèi)容
multiple:多選,若沒有multiple則是單選
selected:表示默認選項
size:表示長度
5.2.3 textarea 標簽:textarea name=”...” cols=”...” rows=”...” wrap=”off/virtual/physical”
/textarea
注意: name:多行文本框的名稱
cols:一行可容納的字符數(shù)
rows:表示可顯示額的行數(shù)
wrap:virtual和phycal控制自動換行
Html5是新的網(wǎng)頁標準,是未來網(wǎng)頁的趨勢,結(jié)合css3,使網(wǎng)頁有更多效果,它擯棄了html4的很多不合理,用的不多,過時了的標簽,加入的新的元素。比html4多了支持視頻,動畫,定位等。
現(xiàn)在很多網(wǎng)站都改成html5的了,這也是一種趨勢。它的產(chǎn)品你到處都可見,甚至現(xiàn)在win8的應(yīng)用都可以用html5+javascript來編寫了。
新特性應(yīng)該基于 HTML、CSS、DOM 以及 JavaScript。
減少對外部插件的需求(比如 Flash)
更優(yōu)秀的錯誤處理
更多取代腳本的標記
HTML5 應(yīng)該獨立于設(shè)備
開發(fā)進程應(yīng)對公眾透明
HTML5 中的一些有趣的新特性:
用于繪畫的 canvas 元素
用于媒介回放的 video 和 audio 元素
對本地離線存儲的更好的支持
新的特殊內(nèi)容元素,比如 article、footer、header、nav、section
新的表單控件,比如 calendar、date、time、email、url、search
一、 HTML5新增的標簽
(1)header nav main? footer? section article hgroup? figure figcaption? aside?
video? audio canvas
? ? ? ? ? ? (2)如何讓新標簽兼容低版本瀏覽器:? html5shiv.js
二、 HTML5新增的表單控件
一、表單控件的新屬性
? ? ? ? input type="text"? placeholder=""? required? autofocus? pattern="abc"
二、新增的表單控件
(1)input type="email"
(2)input type="url"
? (3)數(shù)字控件:? type="number"
? (4)? 滑動組件:? type="range"
? (5)? 拾色器:? ? ? type="color"
? (6)? 日期控件:? ? type="date"
三、本地存儲
1、 三種本地存儲 :? cookie webStorage(localStorage? sessionStorage)
2、localStorage的API
? (1)寫入:? localStorage.setItem(鍵,值);? //值只能是字符串
? localStorage.user = "123" localStorage["user"] = "123"
? (2)讀取? var user = localStorage.getItem("user")
? ? ? ? ? ? ? var user = localStorage.user;
? ? (3)刪除:? localStorage.removeItem("user")? ? localStorage.clear()
? ? (4)修改:? localStorage.setItem("user","890")
3、sessionStorage的API
sessionStorage.setItem(鍵,值);
? ? sessionStorage.getItem(鍵);
? ? sessionStorage.removeItem(鍵);
sessionStorage.clear();
**********重點**********
? 4、cookie webStorage(localStorage? sessionStorage)三者的區(qū)別
四、離線存儲
(1) *.manifest? (*.appcache)?
? ? ? index.html? html manifest="*.manifest"
(2) 理解離線存儲的更新方式
五、移動端的布局思路:
1、設(shè)備像素比(倍率)? 邏輯像素尺寸 (360px? 320px? 375px? 414px)
? ? ? ? window.devicePixelRatio
? ? 2、 meta name="viewport" content="width=device-width,maximum-
scale=1.0,minimum-scale=1.0,initial-scale=1.0,user-scalable=no""
3、使用rem單位
六、地理定位
if (navigator.geolocation){?
? ? ? ? navigator.geolocation.getCurrentPosition(success,error,{
? ? ? ? ? ? timeout: 5000
? ? ? ? });
? ? ? ? function success(pos){
? ? ? ? ? ? 緯度:? pos.coords.latitute
? ? ? ? ? ? 經(jīng)度:? pos.coords.longtitude
? ? ? ? }
? ? }
? ? navigator.geolocation.watchPosition(success);
七、地理定位和百度地圖API的結(jié)合
八、視頻,音頻? video autoplay="autoplay" controls="controls" loop="loop" poster=""
preload="preload"? audio
九、移動端事件:?
(1) ontouchstart? ontouchmove? ontouchend
(2) 如何判斷是否為移動端:? if ("ontouchstart" in document){}
? ? (3) 移動端事件的事件對象及常用屬性
? ? ? e.touches[0].clientX? e.touches[0].clientY? e.touches[0].target
? (4) 移動端常見問題及解決方案:
a、 click事件 300ms的延遲:? 1zepto的tap事件? (2) fastclick.js
b、 zepto的tap事件有點透問題 :? (1) fastclick.js
? ? (5) zepto的touch模塊:? tap? singleTap? doubleTap? longTap?
? ? ? ? ? ? swipeLeft? swipeRight? swipeUp? swipeDown
十、swiper.js的使用? (參考官網(wǎng))
十一、 canvas
(1)? canvas width="600" id="can"/canvas? ? 300*150
? (2)? var can = document.getElementById("can");
? var cxt = can.getContext("2d");
cxt.beginPath();
cxt.moveTo(100,200);
cxt.lineTo(200,400);
? ? ? ? ? cxt.strokeStyle = '#f00';
cxt.stroke();
? ? ? ? ? ? ? cxt.clearRect(0,0,200,300);
? ? ? ? ? ? ? context.globalCompositeOperation="destination-out";? (了解)