html5中引入3d模型的方法是借助第三方PlayCanvas插件來完成的。
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比清苑網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式清苑網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋清苑地區(qū)。費用合理售后完善,10年實體公司更值得信賴。
比如可以用以下方法實現(xiàn)圖片的360度旋轉(zhuǎn):
代碼示例:
var render, loop, t, dt, //定義變量
DEG2RAD = Math.PI / 180, //角度轉(zhuǎn)弧度
cvs = document.querySelector('canvas'), //創(chuàng)建canvas
ctx = cvs.getContext('2d'),//繪制2d圖形上下文
teddy = new Image(), //創(chuàng)建圖像
heart = new Image(), //創(chuàng)建圖像中心
angle = 0,//初始化角度為0
reqAnimFrame =
window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.msRequestAnimationFrame ||
window.oRequestAnimationFrame;
//創(chuàng)建動畫幀
cvs.width = 400;
cvs.height = 200;
teddy.src = 'xxx.jpg';
heart.src = 'yyy.jpg';
//開始渲染
render = function (timestamp) {
dt = timestamp - t;
t = timestamp;
// cavas設置為白色
ctx.fillStyle = "rgb(255,255,255)";
ctx.fillRect(0, 0, cvs.width, cvs.height);
// 繪制中心
ctx.drawImage(heart, -20, -120);
// 繪制teddy
ctx.save();
ctx.translate(cvs.width/2, cvs.height/2); // 移動鼠標到畫布中心
ctx.rotate(DEG2RAD * angle); // 旋轉(zhuǎn)畫布
ctx.drawImage(teddy, -teddy.width/2, -teddy.height/2); // 繪制中心圖片
angle += dt / 16.67 * 6; // increment angle ~ 360 deg/sec
ctx.restore();
};
loop = function (timestamp) {
reqAnimFrame(loop);
render(timestamp);
};
t = Date.now();
loop(t);
所謂盒子模型就是,在網(wǎng)頁中,一個元素占有空間的大小由幾個部分構(gòu)成,其中包括元素的內(nèi)容(content),元素的內(nèi)邊距(padding),元素的邊框(border),元素的外邊距(margin)四個部分。這四個部分占有的空間中,有的部分可以顯示相應的內(nèi)容,而有的部分只用來分隔相鄰的區(qū)域或區(qū)域。4個部分一起構(gòu)成了css中元素的盒模型。
內(nèi)容(CONTENT)就是盒子里裝的東西;
而填充(PADDING)就是怕盒子里裝的東西(貴重的)損壞而添加的泡沫或者其它抗震的輔料;
邊框(BORDER)就是盒子本身了;至于邊界(MARGIN)則說明盒子擺放的時候的不能全部堆在一起,要留一定空隙保持通風,同時也為了方便取出。在網(wǎng)頁設計上,內(nèi)容常指文字、圖片等元素,但是也可以是小盒子(DIV嵌套),與現(xiàn)實生活中盒子不同的是,現(xiàn)實生活中的東西一般不能大于盒子,否則盒子會被撐壞的,而CSS盒子具有彈性,里面的東西大過盒子本身最多把它撐大,但它不會損壞的。
填充只有寬度屬性,可以理解為生活中盒子每個HTML標記都可看作一個盒子;
1.盒子簡介:在CSS處理網(wǎng)頁時,它認為每個元素都包含在一個不可見的盒子里,那么網(wǎng)頁布局就相當于擺放盒子
2.盒子模型組成部分:
內(nèi)容區(qū)(content)
內(nèi)邊距(padding)
外框(border)
外邊距(margin)
1.box的寬高可以用 width和heigh t來設置
注意,width和height只是設置盒子內(nèi)容區(qū)大小,而不是盒子的整個大小,盒子可見框的大小由內(nèi)容區(qū),內(nèi)邊距和邊框共同決定。因此計算 盒子大小=內(nèi)容區(qū)+邊框+內(nèi)邊距
2.為元素設置邊框
要為一個元素設置紅邊框 必須指定三個樣式(缺一不可)
border-width:邊框的寬度
border-color:邊框的顏色
border-style:邊框的樣式
使用border-width可以分別指定四個邊框的寬度。
如果在border-width制定了四個值,則四個值會分別設置給 上右下左 ,按照順時針的方向設置的。
如果指定三個值,則三個值會分別設置給 上 左右 下
如果當指定兩個值,則兩個值會分別設置給 上下 左右
如果當指定一個值,則四邊 全都是該值
這個規(guī)律同時適用于border-color / style
除了border-width,CSS中還提供了四個 border-xxx-width
xxx的值可能是top right bottom left , 專門用來設置指定邊的寬度 。
和寬度一樣,color也提供四個方向的樣式,可以分別指定顏色。例如,border-xxx-color
style也可以分別指定4個邊的邊框樣式,規(guī)則和width一樣,同時它也提供border-xxx-style四個樣式,來分別設置四個邊。
border? 的邊框樣式簡寫方式,通過它可以同時設置四個邊框的樣式,寬度,顏色, 而且沒有任何的順序要求。但是!border一指定就是同時指定四個邊不能分別指定。
border-xxx ,例如border-top? ?border-right? ?border-bottom? border-left
可以單獨設置四個邊的樣式,規(guī)則和border一樣,只不過他只對一個邊生效。
內(nèi)邊距(padding),指的是盒子的內(nèi)容區(qū)域盒子邊框之間的距離。
一共有四個方向的內(nèi)邊距,可以通過:
padding-top
padding-right
padding-left
padding-bottom
來設置四個方向的內(nèi)邊距
內(nèi)邊距會影響盒子的可見框的大小,元素的背景會延伸到內(nèi)邊距。
盒子的大小由內(nèi)容區(qū)、內(nèi)邊距和邊框共同決定。
盒子可見框的寬度=border-left-width + padding-left + width + padding-right + border-right-width
可見框的高度=border-top-width + padding-top + height + padding-bottom + border-bottom-width
使用padding可以同時設置四個邊框的樣式,規(guī)則和border-width一致
外邊距指的是當前盒子與其他盒子之間的距離,他不會影響可見框的大小,而是會影響到盒子的位置。
盒子有四個方向的外邊距:
margin-top
margin-rigtht
margin-bottom
margin-left
由于頁面中的元素都是靠左上擺放的,所以注意當我們設置上和左外邊距時,會導致盒子自身的位置發(fā)生改變。
而如果是設置右和下外邊距會改變其他盒子的位置
外邊距也可以指定一個負值,如果外邊距設置的是負值,則元素會向反方向移動
margin還可以設置為auto,auto一般只設置給水平方向的margin
如果只指定,左外邊距或者右外邊距的margin為auto則會將外邊距設置為最大值
垂直方向外邊距如果設置為auto,則外邊距默認就是0
如果將left和right同時設置為auto,則會將兩側(cè)的外邊距設置為相同的值,就可以使元素自動在父元素中居中,所以我們經(jīng)常將左右外邊距設置為auto,以使元素在父元素中水平居中。
同時,外邊距同樣可以使用簡寫屬性margin,可以同時設置四個方向的外邊距,規(guī)則和padding一樣。
h5標簽,有行內(nèi)標簽和塊級標簽,所謂盒模型應該說的就是這些塊級標簽,還有就是彈性盒子,不過這個是css樣式了
從HTML4.0、XHTML到HTML5,從某種意義上講,這是HTML描述性標記語言的一種更加規(guī)范的過程。因此,HTML5并沒有給開發(fā)者帶來多大的沖擊。但HTML5增加了很多非常實用的新功能和新特性,下面具體介紹HTML5的一些優(yōu)勢。
解決了跨瀏覽器問題
在HTML5之前,各大瀏覽器廠商為了爭奪市場占有率,會在各自的瀏覽器中增加各種各樣的功能,并且不具有統(tǒng)一的標準。使用不同的瀏覽器,常常看到不同的頁面效果。在HTML5中,納入了所有合理的擴展功能,具備良好的跨平臺性能。針對不支持新標簽的老式IE瀏覽器,只需簡單地添加JavaScript代碼就可以使用新的元素。
2.新增了多個新特性?
HTML語言從1.0到5.0經(jīng)歷了巨大的變化,從單一的文本顯示功能到圖文并茂的多媒體顯示功能,許多特性經(jīng)過多年的完善,已經(jīng)發(fā)展成為一種非常重要的標記語言。HTML5新增的特性如下。
● 新的特殊內(nèi)容元素,比如header、nav、section、article、footer。
● 新的表單控件,比如calendar、date、time、email、url、search。
● 用于繪畫的canvas元素。
● 用于媒介回放的video和audio元素。
● 對本地離線存儲的更好支持。
● 地理位置、拖曳、攝像頭等API。
3.用戶優(yōu)先的原則
HTML5標準的制定是以用戶優(yōu)先為原則的,一旦遇到無法解決的沖突時,規(guī)范會把用戶放在第一位。另外,為了增強HTML5的使用體驗,還加強了以下兩方面的設計。
● 安全機制的設計
為確保HTML5的安全,在設計HTML5時做了很多針對安全的設計。HTML5引入了一種新的基于來源的安全模型,該模型不僅易用,而且對不同的API(Application Programming Interface,應用程序編程接口)都通用。使用這個安全模型,不需要借助于任何不安全的hack就能跨域進行安全對話。
● 表現(xiàn)和內(nèi)容分離
表現(xiàn)和內(nèi)容分離是HTML5設計中的另一個重要內(nèi)容。實際上,表現(xiàn)和內(nèi)容的分離早在HTML4.0中就有設計,但是分離的并不徹底。為了避免可訪問性差、代碼高復雜度、文件過大等問題,HTML5規(guī)范中更細致、清晰地分離了表現(xiàn)和內(nèi)容。但是考慮到HTML5的兼容性問題,一些陳舊的表現(xiàn)和內(nèi)容的代碼還是可以兼容使用的。
4.化繁為簡的優(yōu)勢
作為當下流行的通用標記語言,HTML5盡可能地簡化,嚴格遵循了“簡單至上”的原則,主要體現(xiàn)在這幾個方面:
● 新的簡化的字符集聲明;
● 新的簡化的DOCTYPE;
● 簡單而強大的HTML5 API;
● 以瀏覽器原生能力替代復雜的JavaScript代碼。
為了實現(xiàn)這些簡化操作,HTML5規(guī)范需要比以前更加細致、精確。為了避免造成誤解,HTML5對每一個細節(jié)都有著非常明確的規(guī)范說明,不允許有任何的歧義和模糊出現(xiàn)。最近在看黑馬程序員的html5+css3的視頻教程,介紹的很詳細,感興趣的話你可以看看。
本文名稱:html5模型,HTML5特點
分享路徑:http://m.newbst.com/article12/dssiddc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設、靜態(tài)網(wǎng)站、網(wǎng)站收錄、響應式網(wǎng)站、微信公眾號、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)