纯SVG实现进度圈
进度圈(Progress Circles)是经典的仪表盘元素,可以将统计数据直观地展现为摘要视图。我们可以通过JavaScript和Canvas渲染,再配合CSS,图片或者利用SVG实现一个进度圈。使用SVG实现一个进度圈并没有想象中那么难,我们先从基本的开始:创建背景首先,创建一个半径为90px的圆形,然后使用cx,cy设置SVG元素的圆心位置。...
View Article惊艳的动画
考虑一下以下的情景:首先让我们先看一下下面这幅动图,图中George跑着穿过鸽子从而引起鸽子的展翅高飞。我们该如何模拟这种效果呢?仔细观察一下这些鸽子,它们数量不是很多,但是它们都是单独起飞。我们采用错开动画的方式来重建这样的效果,而不是一次就控制一组动画。随着每一个项目动画延迟时间的增加,它们表现的就像是一个个独立的个体,但仍然会作为一个整体正确的移动。这样的结果感觉更加迷人且真实。我最近刚发布的...
View ArticleJavaScript中的作用域
很多(JavaScript)开发者都在讨论"作用域",但它是什么?它们在JavaScript中的任何地方!我发现很多年轻的开发者不知道作用域是什么。他们中大多数人可以用jQuery做一些很酷的东西。但只是停留在从网上复制一些代码片段,修改一下他们懂的地方并且粘贴到一个JavaScript文件中的程度。了解什么是作用域和你能用它做什么是很重要的,我希望能帮你更好地理解它。我讲的大多数内容都来自我为一些...
View Article【转载】CSS 3D Panorama - 淘宝造物节技术剖析
本文转载来自于@J.c在@凹凸实验室发表的《CSS 3D Panorama - 淘宝造物节技术剖析》一文,如果需要转载,烦请注明出处:https://aotu.io/notes/2016/08/24/2016-8-24-css-3d-panorama。前言3D 全景并不是什么新鲜事物了,但以前我们在 Web 上看到的 3D 全景一般是通过 Flash 实现的。若我们能将 CSS3 Transform...
View Article如何使用Rollup打包JavaScript
通过这个系列教程一步一步学习如何使用更小更快的Rollup取代Webpack和Browserify打包JavaScript文件。这周,我们要使用Rollup构建我们的第一个项目,Rollup是一个打包JavaScript(和样式,不过下周才会做)的构建工具。通过这个教程,我们的Rollup将能够:合并scripts代码,删除多余代码,编译成对旧浏览器友好的代码,支持在浏览器中使用Node模块,能使用...
View Article关于更好地组织Sass变量的想法
去年的大部分时间我写的CSS都放在一个预处理的Sass文件中,尤其是在一个.scss文件中。对我来说不错,但没有好好利用Sass提供的特性。我的SCSS文件通常比嵌套输出的CSS要小。我大量使用变量和引入不常用的混合宏,但它使用起来是最简单不过的。我想改变现状,并希望你们不要介意,如果我大胆想出如何开始创建更加模块化和可维护的Sass项目。一个最近项目的例子最近我在做一个相对简单的项目,一个少量内容...
View Article【转载】HTML5 控制装置陀螺仪 ( 三轴 )
本文转载来自于oxxostudio.tw的《HTML5 控制裝置陀螺儀 ( 三軸 )》。如需转载,烦请注明原文出处:http://www.oxxostudio.tw/articles/201506/html5-device-orientation.html自从几年前入手智能型手机之后,对于行动装置上特有的陀螺仪 ( 三轴 ) 侦测与感应器就蛮感兴趣的,而相关的应用除了在一些典型的 APP...
View Article如何隐藏DOM元素
早在2011年整理了一篇有关于图片替换文本的方法,而前几天看到一篇有关于隐藏DOM元素的几种方法。今天这里也将继续说说如何隐藏DOM元素?隐藏DOM元素方法在《用 CSS 隐藏页面元素的 5...
View ArticleFlexbox布局实战
在最近的一个项目中,我们终于将Flexbox广泛用于页面布局当中。通过这次实战,让我对Flexbox相关知识有了更进一步的了解,也在这方面增涨了不少的知识。接下来,我将分三个部分来解释Flexbox在Web布局中的实战。主要页面布局(一个JavaScript单页面小应用)流体网格和折叠盒子(Accordion)“Cards”和“Slabs”产品序言这不是一篇有关于Flexbox的科普教程,这里有些关...
View Article使用CSS 3D Transform创建Isometric布局
本教程的灵感来自于Envato的最新版本。这个页面的主页功能是展示一系列创意产品(字体、图标、图片模板等等),而且其布局采用了一个整洁的Isometric网格布局。我们要使用CSS 3D Transform来得新创建这个Isometric网格布局。等角投影(Isometric...
View ArticleCSS Animation性能优化
CSS Animation是实现Web Animation方法之一,其主要通过@keyframes和animation-*或者transition来实现一些Web动效。不过今天我们聊的不是怎么制作Web动画,咱们来聊聊CSS...
View ArticleCSS Grid布局:快速入门
我们将了解前沿的CSS Grid布局,从而了解CSS Grid布局是如何改变Web的布局。这篇文章是一篇快速入门的文章,将会跳过一些细节和其中的细微差别,其主要是帮助你了解前沿的CSS Grid布局。设置你的浏览器CSS Grid布局(也常常被称为网格)是一个正在讨论的CSS模块规范,你会发现现在浏览器对其支持很弱。如果你现在开始使用它,你需要在IE11(它支持的是旧规范)、Microsoft...
View ArticleCSS Grid布局:列和间距
在上一节介绍了Grid的基础知识,在前一节的基础上介绍Grid的新特性,怎么样来提高间距的设置以使用fr单位和repeat()实现可伸缩性的布局。可伸缩性单位网格的目的是使我们能正确的控制网格布局,让我们的布局变得更容易。如果你还记得,我们在上一节定义的网格都是和像素有关。grid-template-columns: 150px 20px 150px 20px 150px;...
View Article单聊background-repeat
background-repeat是background属性之一,对于前端而言,这是再熟悉不过的属性之一了。那么为什么今天要来聊这个background-repeat属性呢?在CSS2.1中,众所周知,background-repeat属性具有四个常见的值repeat、repeat-x、repeat-y和no-repeat。而今天要说不是这四个属性值,在CSS Backgrounds and...
View ArticleCSS Grid布局:图解网格布局中术语之一
Grid布局是2010由Microsoft提出的,最后提交的工作草案是2016年9月29日提交的。到目前为止,浏览器对其支持度还是一片顠红,但我们还是通过浏览器的设置可以看到相关的效果。比如Chrome浏览器中通过chrome://flags/#enable-experimental-web-platformfeatures打开Chrome浏览器实验网络平台功能。或者在你的项目中调用CSS...
View Article如何使用Rollup打包样式文件并添加LiveReload
通过这个教程学习如何使用JavaScript打包工具Rollup配合PostCSS来取代Grunt或Gulp处理样式文件。上一篇文章中,我们完成了使用Rollup打包前端JavaScript入门。这篇文章包含第二部分和第三部分。第二部分会继续在上次的项目中进行,为Rollup添加处理样式的能力,使用PostCSS进行一些转换,让我们能使用更简单的变量写法和嵌套规则等语法糖。然后完成第三部分,圆满结束...
View ArticleCSS 3D应该注意的事项
我一直喜欢3D。我也开始使用CSS 3D Transform,而且浏览器对它的支持度越来越好。但给我的感觉,使用Transform就是用来创建2D图形,并且使用旋转和位移可以创建一些3D图形。但在实际使用的时候,还是越到了不少的麻烦,而且这些麻烦出乎我的意料。我想或许大家也同样遇到过这样的问题,为了大家在使用CSS 3D...
View ArticleCSS Grid布局:图解网格布局中术语二
在上一节中,主要介绍了CSS Grid布局中网格线、网格布局属性、单元格合并等相关术语,在这篇文章中将继续介绍网络布局中的相关术语:网格区域,网格轨道和网格单元格。希望对大家对学习CSS Grid布局有所帮助。网格区域(Grid...
View Article