css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效


Posted in HTML / CSS onApril 29, 2021

首先 要使用transform-origin属性,必须使用transform 属性,其有很多属性,我们只需要用到transform的rotate属性(设置2D旋转角度),再搭配 transform-origin 设置其中心点。最后搭配css3动画属性animation。完成我们想要的效果。
先上效果图:

css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效

圆都是动态的。
步骤如下:
1、transform属性使用:
我们只需要利用这个属性设置我们需要这个点在圆上的那个位置。transform:rotate(你需要的度数deg)。另外我们需要注意一个点(如果是需要小圆分布在大圆的圆边上,我们需要给大圆设置相对属性position: relative,给小圆设置绝对属性position: absolute,来防止小圆跑到大圆外了)。这样我们就完成了第一步。
2、transform-origin属性使用:
首先我们需要明白transform-origin属性的意义。其可以设置3个属性,我理解为分别为依次XYZ三个轴。我们这里需要使用XY2个轴。其默认属性是 50% 50% 0。那么这是啥意思呢?很简单,就是以设置了这个transform-origin属性的节点的左上角为起始点。向X轴移动50%,Y轴移动50%。当然如果你想要的中心点不再该节点内,可以使用PX来指定节点外的中心点
第二步我们就能得到一个分部在大圆边界线上的小圆的效果了
3、animation属性使用:
同样,首先我们需要知道animation属性为动画,具体自己看文档。我们需要的就是这句话

animation:myfirst 10s linear infinite;

myfirst:为绑定@keyframes用的Id
10s: 时间
linear: 匀速
infinite: 持续不断

最后搭配@keyframes

@keyframes myfirst{
    0%{
      transform: rotate(0);
    }
    25%{
      transform:rotate(90deg);
    }
    50%{
      transform:rotate(180deg);
    }
    75%{
      transform:rotate(270deg);
    }
    100%{
      transform: rotate(360deg);
    }
  }

完成了

到此这篇关于css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效的文章就介绍到这了,更多相关css3实现圆点分布在大圆上布局及旋转内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
css3过渡_动力节点Java学院整理
Jul 11 HTML / CSS
使用CSS3的背景渐变Text Gradient 创建文字颜色渐变
Aug 19 HTML / CSS
CSS3实现鼠标悬停显示扩展内容
Aug 24 HTML / CSS
纯css实现照片墙3D效果的示例代码
Nov 13 HTML / CSS
浅谈css3新单位vw、vh、vmin、vmax的使用详解
Dec 01 HTML / CSS
html通过canvas转成base64的方法
Jul 18 HTML / CSS
HTML5+CSS3应用详解
Feb 24 HTML / CSS
html5使用canvas绘制一张图片
Dec 15 HTML / CSS
HTML5视频播放插件 video.js介绍
Sep 29 HTML / CSS
amazeui时间组件的实现示例
Aug 18 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
Nov 30 HTML / CSS
CSS 文字装饰 text-decoration & text-emphasis 详解
Apr 06 HTML / CSS
CSS3实现的侧滑菜单
CSS完成视差滚动效果
Html5通过数据流方式播放视频的实现
Apr 27 #HTML / CSS
CSS3实现的3D隧道效果
用CSS3画一个爱心
HTML5中 rem适配方案与 viewport 适配问题详解
Apr 27 #HTML / CSS
CSS 还能这样玩?奇思妙想渐变的艺术
You might like
收音机发烧友应当熟知的100条知识
2021/03/02 无线电
轻松入门: 煮好咖啡的七个诀窍
2021/03/03 冲泡冲煮
解析WordPress中函数钩子hook的作用及基本用法
2015/12/22 PHP
Thinkphp3.2.3整合phpqrcode生成带logo的二维码
2016/07/21 PHP
Json对象与Json字符串互转(4种转换方式)
2013/03/27 Javascript
关于JavaScript与HTML的交互事件
2013/04/12 Javascript
jQuery Animation实现CSS3动画示例介绍
2013/08/14 Javascript
HTML Color Picker(js拾色器效果)
2013/08/27 Javascript
js的hasownproperty使用示例
2014/03/02 Javascript
在JavaScript中使用timer示例
2014/05/08 Javascript
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
6种javascript显示当前系统时间代码
2015/12/01 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
node+express制作爬虫教程
2016/11/11 Javascript
JavaScript实现自定义媒体播放器方法介绍
2017/01/03 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
JQuery特殊效果和链式调用操作示例
2019/05/13 jQuery
Vue项目中如何使用Axios封装http请求详解
2019/10/23 Javascript
微信小程序入门之指南针
2020/10/22 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
2020/11/05 Javascript
Python内置的字符串处理函数整理
2013/01/29 Python
在Python中操作列表之list.extend()方法的使用
2015/05/20 Python
非递归的输出1-N的全排列实例(推荐)
2017/04/11 Python
新手入门Python编程的8个实用建议
2019/07/12 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
mac在matplotlib中显示中文的操作方法
2020/03/06 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
马来西亚户外装备商店:PTT Outdoor
2019/07/13 全球购物
亚马逊巴西站:Amazon.com.br
2019/09/22 全球购物
如何估计一张表的大小(假设该表中有1万条数据)
2016/03/27 面试题
Servlet的生命周期
2013/08/25 面试题
学生党员思想汇报
2013/12/28 职场文书
环境卫生倡议书
2014/08/29 职场文书
常务副总经理岗位职责
2015/02/02 职场文书