CSS3实现loading图

HTML5学堂:学习CSS3,重要的并不是那几个命令,而是如何应用CSS3的知识实现网站中的效果,换句话说,“只有想不到,没有做不到”。在这个效果当中,主要用到了圆角边框和动画。

HTML5学堂-刘国利在此郑重声明:本篇文章的灵感来源于2014年的自己一个学生的技术演讲,他运用CSS3实现了loading图效果,在此书写出来与大家分享。效果创造的原作者——黄仕辉

实现的基本思路:利用圆角边框对loading图的样式控制,让其从方形变化为圆形;之后控制不同的边框粗细,调整更佳的视觉效果;最后利用CSS3中的动画,实现运动;在进行布局的时候,要考虑移动端水平垂直居中的要求以及不同分辨率状态下的效果。

基本效果图

基本html结构搭建

<!doctype html>
<html>
<head>
 <meta charset="UTF-8">
 <title>HTML5学堂 - CSS3 - loading图</title>
 <link rel="stylesheet" href="../common/reset.css">
 <style>
     body,html {
         height: 100%;
     }
     .wrap{
         position: absolute;
         top: 0%;
         right: 0%;
         bottom: 0%;
         left: 0%;
         width: 0px;
         height: 0px;
         padding: 15%;
         margin: auto;
         border: 1px solid #06f;
         border-left-width: 4px;
         border-bottom-width: 3px;
         border-right-width: 2px;
         border-radius: 50%;
     }
 </style>
</head>
<body>
 <div class="wrap"></div>
</body>
</html>

此处采用了一种很特殊的居中方法,将盒模型进行定位处理之后,上下左右均采用了0%的值,然后运用margin:auto的控制,让上下左右自动处理外边距值,从而达到居中的状态。关于元素的水平垂直居中,可点击查看:《网易NEC水平垂直居中》

另一个处理,是宽度高度自适应的设置,在为width和height设置百分比之后,会分别根据父级元素的宽度和高度进行计算,此时一旦设备宽度高度不同,我们的loading图就不再是正圆形,由于padding设置百分比值时,均是按照文字方向计算的(默认都是参照父级的宽度计算),因此此处我们将宽高均设为0,而用padding进行内容区大小的设置。

关于边框的设置已经提到了,四个方向采用不同的边框粗细。

顺便一提,由于使用的是CSS3进行控制,因此,即便是在PC端调整窗口大小,loading图的大小也会随之发生变化。

显示效果

PS:从自己博客(独行冰海)取的图片,所以自然底部就有水印了~~~

CSS3动画设置

之后进行CSS3动画的设置即可,在CSS中代码中增加如下内容:

.wrap{

 -webkit-animation: loading 2s linear infinite;
}

@-webkit-keyframes loading {
 from {-webkit-transform: rotate(0deg);}
 to {-webkit-transform: rotate(360deg);}
}

当前就已经实现出来了,不过,在测试的时候会发现,出现了滚动条,因此,我们可以给body再增加这样一句代码:

body {
 overflow: hidden;
}

CSS3就已经搞定了~很简单的解决了loading的效果,很适合在移动端应用。

原文发布于微信公众号 - HTML5学堂(h5course-com)

原文发表时间:2015-12-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏九彩拼盘的叨叨叨

学习纲要:CSS 基础概念

471
来自专栏HTML5学堂

前端特效制作 | CSS3圆形风格面包屑导航

HTML5学堂(码匠):前端开发中,导航栏是一个不可或缺的模块。效果酷炫、制作简单必然是开发者的首选,使用CSS3制作的面包屑导航将是广大开发者的一个绝佳选择。...

3446
来自专栏Coco的专栏

【CSS进阶】伪元素的妙用--单标签之美

24912
来自专栏前端知识分享

第119天:移动端:CSS像素、屏幕像素和视口的关系

移动前端中常说的 viewport (视口)就是浏览器显示页面内容的屏幕区域。其中涉及几个重要概念是 dip ( device-independent pixe...

775
来自专栏老马寒门IT

07-移动端开发教程-移动端视口

老马初始学习视口的概念的时候,看了很多的文章,看来很多的资料,鲜有人能把这个东西讲的非常透彻的。老马接下来就从初学者能看懂的角度去讲解视口和适配的方案。

1888
来自专栏老马寒门IT

08-移动端开发教程-移动端适配方案

由于移动端的特殊性,屏幕的尺寸碎片化严重,要想很好的适配不同的尺寸的设备,需要我们前端开发相比PC端要做一些基层的适配方案。 1. 常见的适配方案 百分比+固定...

3076
来自专栏IMWeb前端团队

css中如何做到容器按比例缩放

本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 在说容易按比例缩放前,我们先说下图片按比例缩放。 对于图片,默认只设置图片的...

2149
来自专栏HTML5学堂

IE6已逝,遗忘在角落的选择器,赶快用起来

那些被遗忘的选择器 在IE6~8“统治”网络世界的时代,CSS2版本曾经推出过几种选择器,而这几种选择器由于对IE6支持程度较差,使得前端开发工程师不得不将其舍...

2749
来自专栏一个小程序员的成长笔记

CSS深入理解学习笔记之relative

1、relative和absolute的相煎关系   限制作用:①限制left/top/right/bottom定位;②限制z-index层级;③限制在over...

3288
来自专栏老马寒门IT

07-移动端开发教程-移动端视口

老马初始学习视口的概念的时候,看了很多的文章,看来很多的资料,鲜有人能把这个东西讲的非常透彻的。老马接下来就从初学者能看懂的角度去讲解视口和适配的方案。 1. ...

28812

扫码关注云+社区