借助Web Animations API实现JS keyframes动画

2018年03月23日 by 张 鑫旭 阅读 29828 次, 今日 7 次

用一句话解释Web Animations API就是把CSS3实现的animation动画变成有JS代码实现。

各有优势。CSS3 Animations动画简单,灵活,复用性强,非常适合静态动画效果;Web Animations参数由JS控制,与单个元素绑定,因此非常适合不固定的动态动画效果,例如随机动画……

阅读全文…

玩转HTML5 Video视频WebVTT字幕使用样式与制作

2018年03月22日 by 张 鑫旭 阅读 49785 次, 今日 9 次

HTML5 Video视频支持支持外挂字幕,文件后缀名是.vtt,称为WebVTT格式,专门的web字幕格式。使用很简单,用一个<track>元素即可。并且字幕的样式是可以控制的。

阅读全文…

HTMLUnknownElement与HTML5自定义元素的故事

2018年03月20日 by 张 鑫旭 阅读 28881 次, 今日 4 次

我之前以为写一个规范以外的标签元素就是自定义元素,后来发现不是的。HTMLUnknownElement与自定义元素并不能直接相等,甚至可以说是陌路两人。

W3规范中,对自定义元素的定义是中间必须要有短横线(就是键盘上的减号)连接,并且浏览器也是这么认为的……

阅读全文…

小tips: 在canvas上实现元素图片镜像翻转动画效果

2018年03月18日 by 张 鑫旭 阅读 31911 次, 今日 6 次

CSS中要想实现元素的翻转效果,比较简单,例如我们希望某一张图片水平镜像翻转,只需要一行CSS就可以了。但是在canvas中,则要麻烦一些,麻烦的并不是无法翻转,而是坐标系的定位……

阅读全文…

CSS :default伪类选择器简介

2018年03月15日 by 张 鑫旭 阅读 25458 次

CSS3 :default伪类选择器作用设计的作用是让用户在选择一组数据的时候,依然知道默认选项是什么,否则其他选项一多,选着选着就不知道默认提供的是哪个了,算是一种体验增强策略。作用不是很强烈,但是关键时刻却很有用。

阅读全文…

CSS, SVG和canvas分别实现文本文字纹理叠加效果

2018年02月27日 by 张 鑫旭 阅读 36556 次, 今日 3 次

本文这里所说的叠加,就是混合模式中的叠加,也就是说,本文要实现的效果是,文字本身的颜色和纹理进行叠加,而非直接填充纹理。

CSS, SVG和canvas都能实现类似的效果,我们一个一个来看一下……

阅读全文…

小tips: 使用JS检测用户是否安装某font-family字体

2018年02月24日 by 张 鑫旭 阅读 51479 次, 今日 7 次

下午突发灵感,写了一段JavaScript小脚本,可以用来判断用户的操作系统是否安装了某字体,代码非常简单,使用也非常方便,性能也比较快,兼容性也非常好,在一些特殊的交互场景非常有用。总之,希望本文的内容能够对您的学习有所帮助。

阅读全文…

解决canvas图片getImageData,toDataURL跨域问题

2018年02月10日 by 张 鑫旭 阅读 116523 次, 今日 21 次

对于跨域的图片,只要能够在网页中正常显示出来,就可以使用canvas的drawImage() API绘制出来。但是如果你想更进一步,通过getImageData()方法获取图片的完整的像素信息,则多半会出错。

那有没有什么办法可以解决这个问题呢?

阅读全文…

CORS ajax跨域请求php简单完整案例一则

2018年02月9日 by 张 鑫旭 阅读 44387 次, 今日 7 次

CORS是Cross-Origin Resource Sharing的缩写,表示跨域的资源分享,不仅可以跨子域,就算域名长得完全不一样,也可以进行资源获取。

比较常见的应用之一就是Ajax跨域请求数据。

阅读全文…

canvas文本绘制自动换行、字间距、竖排等实现

2018年02月5日 by 张 鑫旭 阅读 94203 次, 今日 7 次

和CSS相比,SVG以及canvas对文字排版的支持很弱。

在CSS中天然支持的文本自动换行,其他letter-sapcing字间距,writing-mode竖排等都是一个CSS属性就可以实现。但是在canvas中,全部都不支持。

但是canvas可以方便把文字转换成图片,有些场合,例如广告生成工具就需要canvas前端图片生成,此时我们该如何处理这些文字排版呢?

阅读全文…