非常教程

CSS参考手册

变换 | Transforms

rotate3d()

rotate3d() CSS函数定义了在3D空间中围绕一个固定轴线的旋转元素,而不使其变形的变换。其结果是一个<transform-function>数据类型。

在三维空间中,旋转有三个自由度,共同描述一个旋转轴。旋转轴由x,y,z向量定义,并由原点(由transform-origin属性定义)传递。如果按照规定,矢量未被标准化(即,如果三个坐标的平方和不为1),则用户代理将在内部对其进行标准化。不可规范化的向量,如零向量0,0,0,将导致旋转被忽略,但不会影响整个CSS属性。

注意:与2D平面中的旋转不同,3D旋转的组成通常是不可交换的。换句话说,旋转的顺序影响结果。

语法

rotate3d()创建的旋转量由三个<number>和一个<angle>指定。<number>s为表示旋转轴的矢量的x轴,y轴和z坐标。<angle>表示旋转的角度; 如果是它为正,运动将是顺时针的; 如果是负值,则为逆时针。

rotate3d(x, y, z, a)

可能的值

x是表示旋转轴的矢量的描述的x坐标的<number>

y是描述表示旋转轴向量的y坐标的<number>

z是描述表示旋转轴向量的z坐标的<number>

a是代表旋转的角度的<angle>。正角度表示顺时针旋转,负角度表示逆时针旋转。

Cartesian coordinates on ℝ2

This transform applies to the 3D space and cannot be represented on the plane.

| Homogeneous coordinates on ℝℙ2 |

| Cartesian coordinates on ℝ3 | 1+(1-cos(a))(x2-1)z·sin(a)+xy(1-cos(a))-y·sin(a)+xz·(1-cos(a))-z·sin(a)+xy·(1-cos(a))1+(1-cos(a))(y2-1)x·sin(a)+yz·(1-cos(a))ysin(a) + xz(1-cos(a))-xsin(a)+yz(1-cos(a))1+(1-cos(a))(z2-1)t0001 |

| Homogeneous coordinates on ℝℙ3 | ​ |

实例

沿着y轴旋转

HTML

<div>Normal</div>
<div class="rotated">Rotated</div>

CSS

body {   
  perspective: 800px;
 }  
 
 div {   
   width: 80px;   
   height: 80px;   
   background-color: skyblue;
 }
 
 .rotated {   
   transform:rotate3d(0,1,0, 60deg);   
   background-color: pink;
 }

结果

在自定义轴上旋转

HTML

<div>Normal</div>
<div class="rotated">Rotated</div>

CSS

body {
  perspective: 800px;
}

div { 
  width: 80px;
  height: 80px;
  background-color: skyblue;
}

.rotated {
  transform: rotate3d(1, 2, -1, 192deg);
  background-color: pink;
}

结果

另见

  • transform

  • <transform-function>

CSS

层叠样式表( Cascading Style Sheets )是一种用来表现 HTML 或 XML 等文件样式的计算机语言。CSS 不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

CSS目录

1.动画和转换 | Animations & Transitions
2.背景和边框 | Backgrounds & Borders
3.基本框模型 | Basic Box Model
4.基本用户界面 | Basic User Interface
5.框对齐 | Box Alignment
6. 级联和继承 | Cascading & Inheritance
7.颜色 | Color
8. 合成与混合 | Compositing & Blending
9.条件和规则 | Conditional Rules
10.计数器样式 | Counter Styles
11.设备适配 | Device Adaptation
12.扩展 | Extensions
13.滤镜效果 | Filter Effects
14.灵活的框布局 | Flexible Box Layout
15.字体 | Fonts
16.片段模块 | Fragmentation
17.全屏 API | Fullscreen API
18. 生成内容 | Generated Content
19.网格布局 | Grid Layout
20.图像值 | Image Values
21.初始线格局 | Inline Layout
22.列表和计数器 | Lists & Counters
23.逻辑属性 | Logical Properties
24.面具 | Masking
25.媒体查询 | Media Queries
26.杂项 | Miscellaneous
27.Miscellaneous Level 1
28.Miscellaneous Level 2
29.运动路径 | Motion Path
30. 多列布局 | Multi-column Layout
31.命名空间 | Namespaces
32.项目模型 | Object Model View
33.网页媒体 | Paged Media
34.定位布局 | Positioned Layout
35.伪元素 | Pseudo-
36.节奏大小 | Rhythmic Sizing
37. Ruby布局 | Ruby Layout
38.可缩放矢量图形 | Scalable Vector Graphics
39.滚动快照 | Scroll Snap
40.选择 | Selectors
41.形状 | Shapes
42.文本 | Text
43.文字装饰 | Text Decoration
44.变换 | Transforms
45.值和单位 | Values & Units
46.变量 | Variables
47.写入模型 | Writing Modes
48.CSS 教程
49.CSS 创建
50.CSS Id 和 Class选择器
51.CSS 简介
52.CSS 盒子模型
53.CSS Table(表格)
54.CSS 列表样式(ul)
55.CSS 链接(link)
56.CSS Fonts(字体)
57.CSS Text(文本)
58.CSS Backgrounds(背景)
59.CSS Display(显示) 与 Visibility(可见性)
60.CSS 尺寸 (Dimension)
61.CSS 分组和嵌套
62.CSS 轮廓(outline)属性
63.CSS Border(边框)
64.CSS 图像透明/不透明
65.CSS 导航栏
66.CSS 伪元素
67.CSS 伪类
68.CSS Float(浮动)
69.CSS Position(定位)
70.CSS 总结
71.CSS 属性选择器
72.CSS 媒体类型
73.CSS 图像拼合技术
74.CSS 实例
75.CSS 组合选择符
76.响应式 Web 设计 – 框架
77.响应式 Web 设计 – 视频(Video)
78.CSS 提示工具(Tooltip)
79.CSS 布局 Overflow
80.CSS 计数器
81.CSS 表单