扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
HTML5是HTML的升级版,HTML5有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 Web
创新互联建站长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为建始企业提供专业的成都网站建设、网站设计,建始网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
应用的功能。广义论及HTML5时,实际指的是包括HTML、CSS和JavaScript在内的一套技术组合。今天我们推荐8款使用HTML5生成的特
殊效果,希望可以对大家的使用带来帮助!
HTML5实现的五子棋游戏
在线演示
这是一款使用HTML5实现的五子棋特效,与计算机的对局你不见得能次次都赢得胜利,不信可以点击在线演示。
一款不需要视频文件的视频播放器-Frame player
在线演示
HTML5视频是非常棒的,它可以很容易的用在多款设备上。但是它也有自己的问题,比如移动设备的播放器,可能有不同版本不兼容的情况。今天我们介绍这款视频播放器完善了之前的效果,用起来更方便。希望大家喜欢!
3D菜单
在线演示
或许在现如今这个科技发达的时代,在线点餐已不是新鲜事。餐厅可以对Menu进行设计,点击菜名会相应弹出菜品的照片,或者还可以增加卡路里,原材料和客户们的评价等。绝对是一个超时髦的创意!
用HTML5的画布实现撕布的动画效果
在线演示
用HTML5的画布实现撕布的效果,滑动鼠标,布会随着鼠标变动。点击鼠标左键,然后滑动鼠标,布就会被割开。如果你还没有查看过这款演示效果,那绝对逼真的让你震撼!
HTML5 Canvas(画布) 基础使用和介绍
在线下载
还记得在过去的Web前端开发中,如果你需要绘图或者生成相关图形的话,使用Flash可能是你唯一或者说最强大的实现方式,而在近些年的技术
热点HTML5标准中,HTML
Canvas(画布)能够更加方便的帮助你实现2D绘制图形图像及其各种动画效果功能。在今天的这篇技术教程中我们将介绍基本的Canvas使用,希望大
家觉得有帮助!
HTML5画布生成的2D光源效果
在线演示
超金属的背景,仿佛探照灯的经过让他看上去更加的立体。这是一款使用HTML5 Canvas生成的2D光源效果。绝对让你不后悔使用它!
HTML5的Flappy bird实现
在线演示
著名的Flappy Bird,相信知道的人一定不少吧,点击你的空格,不要让它掉下来,看看你最终的成绩有多好。发上来我们切磋一下吧.
Sonic - 循环加载的利器
在线演示1 在线演示2 在线演示3
Sonic是一个不到3k,非常小的JS类库,你可以用这个类库来创建自定义的加载动画。它的循环动画效果非常赞,比如你可以用它做一条不断追
逐自己尾巴
的蛇,这样的动画。Sonic使用了HTML5的canvas元素和其相关API。它基于在一定小的时间间隔上,基于预定义的路径,画出下一个形状,从而
完成动画效果。你可以使用arc,bezier,或line的方法来定义路径。
HTML5对于用户来说,提高了用户体验,加强了视觉感受。HTML5技术在移动端,能够让应用程序回归到网页,并对网页的功能进行扩展,用户不需要下载客户端或插件就能够观看视频、玩游戏,操作更加简单,用户体验更好。HTML5的视音频新技术解决了移动端苹果和安卓4.0+,对flash的支持问题。在视音频方面,性能表现比flash要更好。网页表现方面,HTML5中的CSS3特效样式、Canvas、webgl的介入,不仅加强了网页的视觉效果,甚至能够使用户在网页当中看到三维立体特效。
对于开发者来说,HTML5技术跨平台,适配多终端。传统移动终端上的Native App,开发者的研发工作必须针对不同的操作系统进行,成本相对较高。Native App对于用户还存在着管理成本、存储成本以及性能消耗成本。HTML/JavaScript/CSS语言所开发的应用只要一次开发就能进入所有浏览器进行分发。即使是走传统的App Store应用商店渠道,只需要再将底层用HTML5开发的应用“封装”为App,从时间和资金成本上讲远小于跨系统移植。
对于搜索引擎来说,HTML5新增的标签,使搜索引擎更加容易抓取和索引网页,从而驱动网站获得更多的点击流量。
CSS3除了为开发者提供二维变形之外,还将动画从二维平面推动到了三维立体状态,能够实现真正的三维特效。
三维变形和二维变形一样,均使用的是transform属性。想要触发三维变形有两种方式:一种方式是通过语法告知浏览器“请采用三维方式进行变形处理”,另一种方式是直接使用CSS3三维变形的语法。
触发方法1:告知浏览器变形方式
-webkit-transform-style:preserve-3d;
Tips:IE不支持三维变形,在移动端,绝大多数的浏览器均为WebKit内核,因此,在此句代码之前需要书写-webkit-的前缀内核。
Tips:不要为body元素设置-webkit- transform-style: preserve 3d,否则会对position:fixed定位的元素造成布局影响。在开发当中,如果当前元素属于body的子级元素,又希望应用三维变形,则在body和当前元素之间多嵌套一层结构,并为这层元素应用三维变形即可。
触发方法2:直接使用CSS3变形语法
!DOCTYPE html
head
meta charset="UTF-8"
title言成科技/title
style
.box1 {
width: 150px;
height: 150px;
border: 2px solid blue;
}
.box1 div {
height: 150px;
background: rgba(0, 0, 0, 0.5);
-webkit-transform: translate3d(30px, 60px, 20px) rotateX(30deg);
transform: translate3d(30px, 60px, 20px) rotateX(30deg);
}
/style
/head
body
div class="box1"
div/div
/div
/body
/html
具体三维变形的具体属性详见《CSS3-3D相关知识详解—视角以及变形方向》
3D效果制作
需求
制作一个立方体,并进行旋转
代码实例
!DOCTYPE HTML
html
head
meta charset="utf-8" /
title言成科技/title
link rel="stylesheet" type="text/css" href="" /
style
.main-bac { -webkit-perspective:1500; } /*设定透视距离*/
.main{
width:200px;
height:200px;
margin: 0 auto;
position:relative;
-webkit-transform-style:preserve-3d;
-webkit-transition:-webkit-transform 2s ease 0s;/*过渡时间*/
}
/*基本样式*/
.main p{
position: absolute;
margin: 0;
padding: 0;
width: 200px;
height: 200px;
text-align: center;
line-height: 200px;
font-size: 26px;
opacity:0.5;
}
/*将第一个元素Z轴向前移动100px,形成第一个面(正面)*/
.main p:nth-of-type(1) {
background-color:red;
-webkit-transform:translateZ(100px);
}
/*将第一个元素Z轴向前移动100px,绕x轴旋转90度形成上面的面*/
.main p:nth-of-type(2) {
background-color:orange;
-webkit-transform:rotateX(90deg) translateZ(100px);
}
/*将第一个元素Z轴向前移动100px,绕x轴旋转-90度形成下边的面*/
.main p:nth-of-type(3) {
background-color:yellow;
-webkit-transform:rotateX(-90deg) translateZ(100px);
}
/*将第一个元素Z轴向前移动100px,绕y轴旋转90度形成右侧的面*/
.main p:nth-of-type(4) {
background-color:green;
-webkit-transform:rotateY(90deg) translateZ(100px);
}
/*将第一个元素Z轴向前移动100px,绕y轴旋转-90度形成左侧的面*/
.main p:nth-of-type(5) {
background-color:#b435bf;
-webkit-transform:rotateY(-90deg) translateZ(100px);
}
/*将第一个元素Z轴向前移动100px,绕y轴旋转180度形成后面(背面)*/
.main p:nth-of-type(6) {
background-color:blue;
-webkit-transform:rotateY(180deg) translateZ(100px);
}
/*鼠标移入时绕Y轴旋转180度,绕Z轴旋转180度*/
.main:hover {-webkit-transform:rotateY(180deg) rotateZ(180deg); }
/style
/head
body
div class="main-bac"
div class="main"
p言成科技/p
p3D立方体/p
pHTML5学堂/p
p3D立方体/p
p码匠/p
pJavaScript/p
/div
/div
/body
/html
代码解析
当鼠标移入的时候,立方体逐渐的发生旋转(非突变),围绕X轴旋转45度的同时,围绕Y轴旋转45度。
当鼠标移出立方体时,立方体恢复到初始状态。在最开始状态时,并没有采用无限远的视角,设置一定的视角,让刚开始时直视立方体时,不会觉得是一个平面。
3D效果制作-目标效果图
以上资料来源:《HTML5布局之路》
HTML5能够以更低的成本和更短的下载时间展现媲美目前顶级网页设计人员设计的外观,语义标记具有网络营销SEO和维护优势。
1、SEO(搜索引擎优化)得到提升
2、更快的图片下载速度,尤其是对于移动用户
3、Web应用开发更容易,尤其是移动应用
4、更精美的动画效果
主要思想:\x0d\x0a首先要准备一张有连续帧的图片,然后利用HTML5Canvas的draw方法在不同的时间间隔绘制不同的帧,这样看起来就像动画在播放。\x0d\x0a关键技术点:\x0d\x0aJavaScript函数setTimeout()有两个参数,第一个是参数可以传递一个JavaScript方法,\x0d\x0a另外一个参数代表间隔时间,单位为毫秒数。代码示例:\x0d\x0asetTimeout(update,1000/30);\x0d\x0aCanvas的API-drawImage()方法,需要指定全部9个参数:\x0d\x0actx.drawImage(myImage,offw,offh,width,height,x2,y2,width,height);\x0d\x0a其中offw,offh是指源图像的起始坐标点,width,height表示源图像的宽与高,x2,y2表\x0d\x0a示源图像在目标Canvas上的起始坐标点。\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0aCanvasMouseEventDemo\x0d\x0a\x0d\x0a\x0d\x0avarctx=null;globalvariable2dcontext\x0d\x0avarstarted=false;\x0d\x0avarmText_canvas=null;\x0d\x0avarx=0,y=0;\x0d\x0avarframe=0;225*5+2\x0d\x0avarimageReady=false;\x0d\x0avarmyImage=null;\x0d\x0avarpx=300;\x0d\x0avarpy=300;\x0d\x0avarx2=300;\x0d\x0avary2=0;\x0d\x0awindow.onload=function(){\x0d\x0avarcanvas=document.getElementById("animation_canvas");\x0d\x0aconsole.log(canvas.parentNode.clientWidth);\x0d\x0acanvas.width=canvas.parentNode.clientWidth;\x0d\x0acanvas.height=canvas.parentNode.clientHeight;\x0d\x0aif(!canvas.getContext){\x0d\x0aconsole.log("Canvasnotsupported.PleaseinstallaHTML5compatiblebrowser.");\x0d\x0areturn;\x0d\x0a}\x0d\x0aget2Dcontextofcanvasanddrawrectangel\x0d\x0actx=canvas.getContext("2d");\x0d\x0actx.fillStyle="black";\x0d\x0actx.fillRect(0,0,canvas.width,canvas.height);\x0d\x0amyImage=document.createElement('img');\x0d\x0amyImage.src="..robin.png";\x0d\x0amyImage.onload=loaded();\x0d\x0a}\x0d\x0afunctionloaded(){\x0d\x0aimageReady=true;\x0d\x0asetTimeout(update,100030);\x0d\x0a}\x0d\x0afunctionredraw(){\x0d\x0actx.clearRect(0,0,460,460)\x0d\x0actx.fillStyle="black";\x0d\x0actx.fillRect(0,0,460,460);\x0d\x0afindtheindexofframesinimage\x0d\x0avarheight=myImage.naturalHeight5;\x0d\x0avarwidth=myImage.naturalWidth5;\x0d\x0avarrow=Math.floor(frame5);\x0d\x0avarcol=frame-row*5;\x0d\x0avaroffw=col*width;\x0d\x0avaroffh=row*height;\x0d\x0afirstrobin\x0d\x0apx=px-5;\x0d\x0apy=py-5;\x0d\x0aif(px
1、SEO(搜索引擎优化)得到提升
一些常用的图形效果有CSS3表达方式,包括不透明贴图、圆角、阴影。这些效果与CSS3渐变色一起使得上传更为简洁,跨平台维护也更为容易。此外,它们还在SEO(搜索引擎优化)方面具有优势。
为了理解SEO,我们还要回到刚才提到的渐变色。CSS3渐变色的另一个优势是它们可以更好的向下兼容源代码控制系统(SCCS)。在CSS3出现之前,渐变色通过图片实现。在常用的SCCS中调整图片是一个不透明的过程。
通过CSS3的渐变色语义标记,SCCS能够很方便在表面渐变的文本进行操作。SCCS能够在特定时间自动报告,渐变色彩的变化或是饱和度。其格式如下:
这上优势也提升了不透明贴图和其它的CSS3标记。假设一个名为Acme Widgets的公司想通过不透明贴图在其网页上标记公司的名称。在CSS3出现之前,他们需要使用Photoshop或类似工具才行,这导致需要设计一个图片,通过一张不透明的贴图显示Acme Widgets。
由于内容是内嵌在图片中的,因此Acme Widgets根据无法被搜索引擎找到。CSS3的出现改变了这一情况。
2、更快的图片下载速度,尤其是对于移动用户
在网页设计中,“渐变”是一种背景效果:你的网页上的“窗口”拥有更精致的底纹或纹理。公司设计人员有更大的空间来平衡明暗度、匹配边界,实现让大数浏览者叹为观止的色彩或风格。
渐变效果的头二十年是通过“着色”来取得的。在HTML5之前,背景必须作为一个图片(或是由多个子图叠加在一起)被提供。例如,Photoshop有一个“渐变工具”。该工具主要用于构建一个背景图片以作为渐变色使用。这一功能获得了很大的成功。每一名称职的网页设计者通常都会使用已经有的渐变色作为背景图片。
首先,其非常简洁。CSS3渐变规范通常有数百个字节,而表达渐变的背景图片通常会有数千个字节。除了这一优势外,CSS3的是渐变是内联的,其传输不需要打开其它的文件。当大量网站浏览者通过带宽有限的移动浏览器访问时,让用于网页渲染的辅助连接的数量保持低水平对于提升性能非常关键。
你的网页设计人员能够像以往那样做同样的事情--使用Photoshop的渐变工具或是类似工具,然后导出至CSS3而不是HTML4或XHTML。终端用户在他们的浏览器上的效果几乎没有什么差别,但是下载速度却提升了许多。此外,CSS3渐变色还能够更容易的生就不同的屏幕尺寸和各种分辨率。
其它技术优势还包括:
总体上,其能够内联老式的渐变色,因此能够减少下载成本。
?除了CSS3之外,HTML5还包括了其它的渐变效果。
渐变色的CSS3支持将可编程性提升到了一个新的水平。例如,设计人员可以根据浏览者的年龄和位置调整渐变背景。
3、Web应用开发更容易,尤其是移动应用
最后一个优势是,HTML5解决方案是一个可媲美原生应用的编程环境。这对于移动终端用户来说非常重要,原生应用开发成本昂贵:其编程人员薪水高、许可证各类繁多,可移植性差。HTML5在优势在于许多应用能够被完整的编在HTML5内。
4、更精美的动画效果
除了上面所提到的功能外,其特色功能还包括:
HTML5能够以更低的成本和更短的下载时间展现媲美目前顶级网页设计人员设计的外观,语义标记具有SEO和维护优势。HTML5现在拥有的一些效果已经超越早期标准的效果,其中之一就是动画制作。
为了获得精美的动画效果,网页团队过去通常使用Flash。不过,Flash也有一些明显的不足:搜索引擎无法索引,苹果的iOS和操作系统不允许使用Flash。安全性和许可证限制了其在许多公司中的使用。通过HTML5,精美的可视化动画可以成为语义动画。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流