HTML5:七天学会基础动画网页7

CSS3高级特效

2D转换方法

移动:translate()

旋转:rotate()

缩放:scale()

倾斜:skew()

属性:transform

作用:对元素进行移动,旋转,缩放,倾斜。

2D移动

设定元素从当前位置移动到给定位置(x,y)

方法 说明

translate(x,y) 2D转换 沿X轴和Y轴移动元素

translateX(n) 沿X轴移动元素

translateY(n) 沿Y轴移动元素

(因为代码是从上到下开始生效,最后这两个只能生效一个,上面的会被下面的覆盖)

例:我们随便给一个div

<style>

*{

margin: 0;

padding: 0;

}

.big{

width: 100px;

height: 100px;

background-color: pink;

}

</style>

</head>

<body>

<div class="big">

</div>

</body>

给一个坐标

<style>

*{

margin: 0;

padding: 0;

}

.big{

width: 100px;

height: 100px;

background-color: pink;

transform: translate(100px,200px);

}

</style>

</head>

<body>

<div class="big">

</div>

</body>

如果只给一个值

transform: translate(100px)就只作用于x轴

参照点:元素本身左上角为原点,不脱离标准流

x:正值向原点的右边平移,负值左边。

y:正值向原点的下边平移,负值上边。

旋转

设定元素顺时针旋转给定的角度,负值表示逆时针旋转,默认以容器的中心为原点旋转

语法:transform:rotate(ndeg);

如何改变旋转原点:

transform-origin: x轴距离,y轴距离;

此时以坐标(x,y)为圆心旋转

也可以使用transform-origin: top left;定义以左上角为旋转原点,同理------右下:bottom right;右上:top right;.........

例子:

<style>

*{

margin: 0;

padding: 0;

}

.big{

width: 100px;

height: 100px;

background-color: pink;

margin: 40px auto;

transform-origin: 50px 100px;

transform: rotate(30deg);

}

</style>

</head>

<body>

<div class="big">

</div>

</body>

我们可以放开想象,对一些有想法的元素设置放置鼠标发生变化,当然我们会发现这个变化过程非常快,我们后面会引入动画解决这一问题,接下来还会了解缩放和倾斜

相关推荐
William_Xu32 分钟前
Vue 2 与 Vue 3 生命周期对比
前端
Hilaku1 小时前
为什么你的大文件断点续传,一遇到弱网就崩溃?
前端·javascript·程序员
胡哈2 小时前
React Compiler:让开发者忘掉 memo 这件事
前端·react.js
xiyueyezibile2 小时前
“自迭代” Skill 的 team-pitfalls 的演进
前端·后端·ai编程
林恒smileZAZ2 小时前
`Array(100).map(() => 1)` 为什么全为空?
前端·javascript
小巧的砖头2 小时前
C#会重蹈覆辙吗?系列之2:反射及元数据的性能问题
开发语言·前端·c#
KaMeidebaby2 小时前
卡梅德生物技术快报|蛋白的叠氮基修饰:实操解析:核酸模板耦合蛋白的叠氮基修饰实现靶蛋白定点共价标记
前端·人工智能·物联网·算法·百度
濮水大叔3 小时前
在大型 Vue 项目中,如何有效管理复杂的状态?“散装版” vs “套装版”
前端·vue.js·typescript
玄星啊3 小时前
可修改:代码的生存底线
前端·ai编程
没落英雄3 小时前
3. DeepAgents 实战 - Memory Skills 与上下文工程
前端·人工智能·架构