CSS基础-2D变形

这篇具有很好参考价值的文章主要介绍了CSS基础-2D变形。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

变形是CSS3中比较颠覆性的特征之一,今天介绍四种2D变形旋转、缩放、倾斜、位移变形。

变形在CSS3用 transform 属性 来实现。

transform-origin 属性

transform-origin 表示旋转的原点,默认是在盒子的中心位置(center)。

Untitled.png

transform-origin 的值可以是一个、两个或者三个,其中的每个值都表示一个方向上的偏移量。没有明确定义将默认为 center。

transform-origin: x y z;

Untitled 1.png

  • 第一个值 表示X轴上的偏移量, 可以使用 像素等长度单位、百分比 表示;也可以使用 left、center、right、top、bottom当中的一个值表示。
  • 第二个值 表示Y轴上的偏移量, 可以使用 像素等长度单位、百分比 表示;也可以使用 left、center、right、top、bottom当中的一个值表示。
  • 第三个值 表示Z轴上的偏移量,只能使用 像素 等长度单位表示。

旋转变形

旋转变形即使一个盒子发生旋转。

rotate() 函数来给 transform  属性赋值,即可实现旋转变形,若角度为正,则顺时针旋转,否则逆时针旋转。

语法

transform: rotate(45deg)

举例

盒子以中心为原点,旋转 45度。

Untitled 2.png

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>旋转变形</title>
    <style>
      .box {
        margin: 50px;
        width: 100px;
        height: 100px;
        background-color: blue;
        transform-origin: center;
        transform: rotate(45deg);
      }
    </style>
  </head>
  <body>
    <div class="box"></div>
  </body>
</html>

缩放变形

缩放变形即放大缩小一个盒子。

scale() 函数来给 transform  属性赋值,即可实现缩放变形, scale 函数接受的值为缩放比例, 大于1 表示放大, 小于1表示缩小。

语法

transform: scale(2);

举例

三个盒子,一个放大,一个缩小,一个不变。

Untitled 3.png

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      div {
        display: inline-block;
        width: 100px;
        height: 100px;
        background-color: orange;
        margin: 50px;
      }

      .box1 {
        transform: scale(2);
      }

      .box3 {
        transform: scale(0.5);
      }
    </style>
  </head>
  <body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>
  </body>
</html>

倾斜变形

倾斜变形即使一个盒子倾斜。

skew() 函数来给 transform  属性赋值,即可实现倾斜变形, skew 函数接受两个值, 第一个值表示X轴的斜切角度,第二个值表示Y轴的斜切角度。

语法

tranform: skew(10deg, 20deg)				

举例

两个盒子,其中一个盒子不变,另一个盒子x轴倾斜10 度, Y轴倾斜0度。

Untitled 4.png

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>斜切变形</title>
    <style>
      div {
        display: inline-block;
        width: 100px;
        height: 100px;
        background-color: orange;
        margin: 50px;
      }

      .box2 {
        transform-origin: center;
        transform: skew(10deg, 0deg);
      }
    </style>
  </head>
  <body>
    <div class="box1"></div>
    <div class="box2"></div>
  </body>
</html>

位移变形

位移变形即使一个盒子的 位置发生位移, 有点像之前讲到过的 相对定位,同样位移变形后,原来的位置无法被别的盒子占用。

translate() 函数来给 transform  属性赋值,即可实现位移变形, translate函数接受两个值, 第一个值表示向右移动距离, 第二个值表示向下移动距离。

语法

transform: translate(100px 200px)

举例

三个盒子,使得第二个盒子的位置发生变化。

Untitled 5.png文章来源地址https://www.toymoban.com/news/detail-677064.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>位移变形</title>

    <style>
      .box1 {
        width: 100px;
        height: 100px;
        background-color: red;
      }
      .box2 {
        width: 100px;
        height: 100px;
        background-color: green;
        transform: translate(200px, 200px);
      }

      .box3 {
        width: 100px;
        height: 100px;
        background-color: blue;
      }
    </style>
  </head>
  <body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>
  </body>
</html>

到了这里,关于CSS基础-2D变形的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CSS布局基础(CSS属性特征 & 盒子阴影 & 文字阴影)

    块元素 独占一行,默认宽度100% 可设置宽高,内外边距 大部分块元素内部可以放 任意元素 文字类块元素 p / h1-h6内部,不能放块元素 常见块元素 h1-h6 p div ul ol dl li … 行内元素 在同一行显式 不能直接设置宽高,默认宽高就是实际内部内容宽高 内部只能容纳文本或者行内元素

    2024年02月01日
    浏览(80)
  • 面向对象的特征之一:封装

    1.面向对象这个编程思想,有三个基本特征: ① 封装 ② 继承 ③ 多态 2.什么是封装性? 生活中,快递包裹,通常需要用袋子或箱子装起来。 目的:① 包含的内部商品,不会被损坏            ② 可以包含隐私            ③ 运输更方便 所以,代码也要考虑这些因素: ①

    2024年02月05日
    浏览(44)
  • 小程序 css flex的子元素图片被周边元素text挤压变形

     flex下子元素会自动拉伸,第一个子元素image设置了100 * 100还是被后面的text过长文字挤压了。 解决: 方法1: 让图片不自动拉伸加上 flex:noe  方法2: flex下面所有的子元素都设置宽度,这个会比较麻烦,需要计算。 方法3: 过长的文本设置一个max-width:400rpx,这个跟上面方法

    2024年02月11日
    浏览(30)
  • 机器学习中最基本的概念之一:数据集、样本、特征和标签

    数据集、样本、特征和标签是机器学习中的重要概念,这些概念在机器学习算法的设计和实现过程中起着至关重要的作用。在本文中,我们将对这些概念进行详细的讲解,以便更好地理解机器学习算法的基本原理和应用。 数据集是机器学习中最基本的概念之一,它是指一组相

    2024年02月09日
    浏览(38)
  • CSS变形与动画(二):perspctive透视效果 与 preserve-3d 3d效果(奥运五环例子)

    perspective 指定了观察者与 z=0 平面的距离,使具有三维位置变换的元素产生透视效果。z0 的三维元素比正常大,而 z0 时则比正常小,大小程度由该属性的值决定。 作用于在 父级 上。 相互可以视觉上 插入 和 覆盖 transform-style: preserve-3d; 也是用在 父级 上 例子 奥运五环 通过每

    2024年02月12日
    浏览(67)
  • CSS3 高级- 复杂选择器、内容生成、变形(transform)、过渡(transition)、动画(animation)

    兄弟选择器:选择平级元素的唯一办法 -适用:通过已知元素选择之后的平级兄弟元素时 1、相邻兄弟选择器: 2、通用兄弟选择器: 属性选择器: -通过元素的属性来定位元素 1、通用:基本用不着,太泛了 2、自定义:4种 1、精确条件: 2、模糊条件: 3、模糊条件:很少用,

    2024年04月09日
    浏览(55)
  • 【视觉SLAM入门】5.1. (基于特征点的视觉里程计)特征提取和匹配--FAST,ORB(关键点描述子),2D-2D对极几何,本质矩阵,单应矩阵,三角测量,三角化矛盾

    为什么重要?我们是在做什么事? 特征提取和匹配: 首先是两幅图像的特征提取,然后是对应特征点的匹配。接下来的工作是根据得到的匹配点对,估计相机的运动,具体根据相机分为三种方法: 单目相机:2D-2D: 对极几何 方法 双目或者RGBD相机: 3D-3D: ICP 方法 一个3D点

    2024年02月10日
    浏览(38)
  • 基于SIFT图像特征识别的匹配方法比较与实现

    目前常用的匹配器有 BFMatcher and FlannBasedMatcher 1.1 BFMatcher BFMatcher 全称是 Brute-Force Matcher (直译即为暴力匹配器) 大致原理: 对于 img1 中的每个描述符, BFMatcher 将其与 img2 中的所有描述符进行比较;它计算两个描述符之间的距离度量(例如,欧几里得距离或汉明距离,默认使

    2024年02月09日
    浏览(47)
  • 人脸识别领域 landmark_2d_106,landmark_23d_64,embedding 特征

    1. 人脸识别领域 landmark_2d_106 在人脸识别领域,landmark_2d_106是指对人脸的106个关键点进行的二维标定。这些关键点通常包括眼睛、眉毛、鼻子、嘴唇等部位的位置。通过准确地识别和定位这些关键点,可以帮助系统更准确地识别人脸并进行人脸属性分析、情绪分析等任务。

    2024年02月04日
    浏览(37)
  • 【视觉SLAM入门】5.1. 特征提取和匹配--FAST,ORB(关键点描述子),2D-2D对极几何,本质矩阵,单应矩阵,三角测量,三角化矛盾

    为什么重要?我们是在做什么事? 特征提取和匹配: 首先是两幅图像的特征提取,然后是对应特征点的匹配。接下来的工作是根据得到的匹配点对,估计相机的运动,具体根据相机分为三种方法: 单目相机:2D-2D: 对极几何 方法 双目或者RGBD相机: 3D-3D: ICP 方法 一个3D点

    2024年02月13日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包