Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >【CSS3】CSS3 2D 转换 - scale 缩放 ① ( 使用 scale 设置缩放 | 使用 scale 设置缩放 与 直接设置盒子模型大小 对比 )

【CSS3】CSS3 2D 转换 - scale 缩放 ① ( 使用 scale 设置缩放 | 使用 scale 设置缩放 与 直接设置盒子模型大小 对比 )

作者头像
韩曙亮
发布于 2023-10-11 12:21:56
发布于 2023-10-11 12:21:56
2.4K03
代码可运行
举报
运行总次数:3
代码可运行

一、使用 scale 设置缩放

在 CSS3 中的 2D 转换 中 , 可以使用 scale 样式 , 设置 盒子模型 的缩放属性 , 可以设置 放大 和 缩小 ;

scale 样式语法 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
transform:scale(x,y);
  • scale() 中的 x 和 y 使用 逗号隔开 ;
  • x 和 y 的值是 小数 类型 , 取值范围 大于 0 ;

借助以下样式理解 scale 语法 :

  • 设置 transform:scale(1,1); 样式 , 表示 盒子模型 宽高 都放大了一倍 , 也就是不变 ;
  • 设置 transform:scale(2,2); 样式 , 表示 盒子模型 宽高 都放大了 2 倍 ;
  • 设置 transform:scale(0.5,0.5); 样式 , 表示 盒子模型 宽高 都缩小到 0.5 倍 ;

如果 scale 只设置一个参数 , 那么就是同时对 宽高 缩放相同的倍数 , 如 : 设置 transform:scale(2); 样式 , 表示 盒子模型 宽高 都放大了 2 倍 , 相当于 transform:scale(2,2); 样式 ;

可以为 宽度 和 高度 设置不同的倍数 , 如 : 设置 transform:scale(2,0.5); 样式 , 表示 盒子模型 宽度放大到原来的 2 倍 , 高度缩小到原来的 0.5 倍 ;

二、使用 scale 设置缩放 与 直接设置盒子模型大小 对比

使用 transform:scale 可以设置 盒子模型 的 缩放倍数 ;

直接修改 盒子模型 大小 , 也可以实现上述相同的功能 ;

直接 修改 盒子模型 大小 ,

  • 无法设置 缩放的 中心位置 , 盒子模型 只能向 左右 和 下方延伸 , 不能向上方延伸 ;
  • 会影响页面的 整体布局 , 影响 其它盒子模型 布局 ; 如 : 该盒子模型变大 , 那么下面的盒子就会被挤下去 ;

使用 transform:scale 设置缩放 ,

  • 可以任意设置 缩放的方向 ,
  • 不会影响 其它 盒子模型的布局 ;

三、代码示例


1、代码示例 - 设置两个参数代表宽高缩放

代码示例 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!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>CSS3 2D 转换 - rotate 旋转</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            /* 上下 100 像素外边距, 居中对齐 */
            margin: 100px auto;
            /* 设置背景颜色 */
            background-color: pink;
            /* 设置以左下角为中心旋转 */
            transform-origin: 50% 50%;
            /* 设置过渡动画 */
            transition: all 1s;
        }
        /* 设置 鼠标 移动到 div::before 伪元素 上的效果 */
        
        div:hover {
            /* 鼠标移动上去后  */
            transform: scale(2, 0.5);
        }
    </style>
</head>

<body>
    <div>
    </div>
</body>

</html>

执行结果 :

  • 初始状态 :
  • 鼠标移动到盒子模型上之后 : 宽度变为原来的 2 倍 , 高度变为原来的 0.5 倍 ;

2、代码示例 - 设置 1 个参数代表宽高缩放

代码示例 :

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!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>CSS3 2D 转换 - rotate 旋转</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            /* 上下 100 像素外边距, 居中对齐 */
            margin: 100px auto;
            /* 设置背景颜色 */
            background-color: pink;
            /* 设置以左下角为中心旋转 */
            transform-origin: 50% 50%;
            /* 设置过渡动画 */
            transition: all 1s;
        }
        /* 设置 鼠标 移动到 div::before 伪元素 上的效果 */
        
        div:hover {
            /* 鼠标移动上去后  */
            transform: scale(2);
        }
    </style>
</head>

<body>
    <div>
    </div>
</body>

</html>

执行结果 :

  • 初始状态 :
  • 鼠标移动到盒子模型上之后 : 宽高都变为原来的 2 倍 ;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【CSS3】CSS3 2D 转换 - rotate 旋转 ④ ( 旋转案例 )
有 实际内容 的 子盒子模型 , 初始状态就 沿着 左下角为中心点 , 顺时针旋转了 90 度 ;
韩曙亮
2023/10/11
3420
【CSS3】CSS3 2D 转换 - rotate 旋转 ④ ( 旋转案例 )
【CSS3】CSS3 2D 转换 - scale 缩放 ② ( 使用 scale 设置缩放代码示例 - 图片缩放示例 )
当鼠标移动到 图片上时 , 显示如下效果 , 其中图片是逐渐放大的 , 有一个过渡 :
韩曙亮
2023/10/11
2400
【CSS3】CSS3 2D 转换 - scale 缩放 ② ( 使用 scale 设置缩放代码示例 - 图片缩放示例 )
【CSS3】CSS3 3D 转换示例 - 盒子模型翻转示例 ( 开启透视视图 | 设置过渡动画 | 设置 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型背靠背效果 )
HTML 页面 呈现 3D 效果 , 需要 设置 3D 空间中的透视效果 属性 , 该属性的 属性值 表示 观察者眼睛 ( 视点 ) 到 3D 转换元素 ( 盒子标签模型 ) 的距离 , 单位是像素 ;
韩曙亮
2024/05/24
4040
【CSS3】CSS3 3D 转换示例 - 盒子模型翻转示例 ( 开启透视视图 | 设置过渡动画 | 设置 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型背靠背效果 )
【CSS3】CSS3 2D 转换 - rotate 旋转 ③ ( 使用 transfrom-origin 设置旋转中心点 | 使用 方位词 / 百分比值 / 像素值 设置旋转中心点 )
为 div 盒子模型 设置 transform: rotate 样式 , 可以使 盒子模型 围绕 中心点 进行 旋转 , 代码如下 :
韩曙亮
2023/10/11
1.1K0
【CSS3】CSS3 2D 转换 - rotate 旋转 ③ ( 使用 transfrom-origin 设置旋转中心点 | 使用 方位词 / 百分比值 / 像素值 设置旋转中心点 )
【CSS3】CSS3 3D 转换示例 - 3D 导航栏示例 ( 列表设置 | 透视视图 | 过渡动画 | 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型的效果 )
正面 和 底部 各有一个 盒子模型 , 鼠标移动到 正面 盒子模型 后 , 整个 盒子模型 的 父容器 绕 X 轴 旋转 90 度 , 向上翻转 90 度 , 显示底部的 盒子模型 ;
韩曙亮
2024/03/12
2120
【CSS3】CSS3 3D 转换示例 - 3D 导航栏示例 ( 列表设置 | 透视视图 | 过渡动画 | 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型的效果 )
【CSS3】CSS3 3D 转换示例 - 3D 旋转木马 ( @keyframes 规则 定义动画 | 为 盒子模型 应用动画 | 开启透视视图 | 设置 3D 呈现样式 )
HTML 标签结构很简单 , 只是一个 section 标签 , 内部包裹着 6 个 div 标签子盒子 ;
韩曙亮
2024/03/12
5960
【CSS3】CSS3 3D 转换示例 - 3D 旋转木马 ( @keyframes 规则 定义动画 | 为 盒子模型 应用动画 | 开启透视视图 | 设置 3D 呈现样式 )
【CSS3】CSS3 2D 转换 - scale 缩放 ③ ( 使用 scale 设置制作可缩放的按钮案例 )
当鼠标移动到 按钮 上之后 , 鼠标 变为 小手 样式 , 并且 按钮 以 中心位置 为准 , 放大到原来的 2 倍 ;
韩曙亮
2023/10/11
2430
【CSS3】CSS3 2D 转换 - scale 缩放 ③ ( 使用 scale 设置制作可缩放的按钮案例 )
CSS3 2D转换
转换(transform)是CSS3中具有颠覆性的特征之一,可以实现元素的位移、旋转、缩放等效果
梨涡浅笑
2020/10/27
4430
CSS3 2D转换
【CSS3】CSS3 2D 转换 - 三种变换的综合写法 ( 同时进行 移动 / 旋转 / 缩放 变换 | 代码示例 )
同时 设置了 多个 变换 样式 , 变换的 先后顺序 影响 最终的结果 , 如 :旋转 会 改变 坐标轴方向 , 位移 会 改变 中心点位置 ;
韩曙亮
2023/10/15
3090
【CSS3】CSS3 2D 转换 - 三种变换的综合写法 ( 同时进行 移动 / 旋转 / 缩放 变换 | 代码示例 )
什么C3转换还可以这样玩???用CSS3实现2D转换、3D转换、3D呈现,详细总结及案例演示。
如下代码的效果为:当鼠标悬停在图片上时,图片会顺时针旋转360°,为了更具有动画效果,添加了过渡效果。
阿年、嗯啊
2021/04/29
8380
什么C3转换还可以这样玩???用CSS3实现2D转换、3D转换、3D呈现,详细总结及案例演示。
CSS3 2D和3D的使用
过渡(transition)是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。
用户9615083
2022/12/25
1.1K0
CSS3 2D和3D的使用
【CSS3】CSS3 2D 转换 - translate 平移 ( transform: translate 样式 | 百分比移动相对于元素自身尺寸 | 百分比移动实现绝对定位的居中效果 )
CSS3 中的 Transform 转换 , 可以实现 标签元素 的 位移 / 旋转 / 缩放 ;
韩曙亮
2023/04/24
9820
【CSS3】CSS3 2D 转换 - translate 平移 ( transform: translate 样式 | 百分比移动相对于元素自身尺寸 | 百分比移动实现绝对定位的居中效果 )
【CSS3】CSS3 动画 ④ ( 使用动画制作地图热点图 )
地图 是 一张 png 格式的 半透明 背景图片 , 图片大小为 747 x 617 像素 ;
韩曙亮
2023/10/15
3970
【CSS3】CSS3 动画 ④ ( 使用动画制作地图热点图 )
【移动端网页布局】移动端网页布局基础概念 ⑩ ( CSS3 盒子模型 box-sizing | 盒子模型尺寸 = 内容尺寸 = 内边距 + 边框宽度 | box-sizing 样式设置 )
参考 【CSS】盒子模型内边距 ④ ( 盒子模型内部尺寸计算 - 内容尺寸、内边距、边框宽度 | 盒子模型尺寸 = 内容尺寸 + 内边距 + 边框宽度 ) 博客 , 传统的盒子模型计算公式如下 :
韩曙亮
2023/04/30
1.1K0
【移动端网页布局】移动端网页布局基础概念 ⑩ ( CSS3 盒子模型 box-sizing | 盒子模型尺寸 = 内容尺寸 = 内边距 + 边框宽度 | box-sizing 样式设置 )
「HTML&CSS」第二部分
请注意,本文编写于 2106 天前,最后修改于 174 天前,其中某些信息可能已经过时。
曼亚灿
2023/05/17
2120
「HTML&CSS」第二部分
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
移动元素位置的方法,再2D平面中进行移动,有两个值,第一个值是x轴移动,第二个值是y轴移动,正数向右向下移动,负数向左向上移动。
坚毅的小解同志的前端社区
2022/11/28
1.3K0
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
【CSS3】CSS3 3D 转换 ⑤ ( 3D 呈现效果 - transform-style 属性 | transform-style 属性语法 | 设置 透视视图 效果 | 结构伪类选择器 )
父盒子 中 如果有 子盒子 , 假如 父盒子 有 3D 变换 的 效果 , 那么子盒子的 3D 效果 则需要使用 特殊的属性 transform-style 进行设置 ;
韩曙亮
2024/03/02
9110
【CSS3】CSS3 3D 转换 ⑤ ( 3D 呈现效果 - transform-style 属性 | transform-style 属性语法 | 设置 透视视图 效果 | 结构伪类选择器 )
【CSS】盒子模型内边距 ② ( 内边距复合写法 | 代码示例 )
padding 属性值设置 : 设置 1 ~ 4 个 值 , 单位 像素 px ;
韩曙亮
2023/03/30
9180
【CSS】盒子模型内边距 ② ( 内边距复合写法 | 代码示例 )
【CSS3】CSS3 2D 转换 - rotate 旋转 ( transform: rotate(90deg) 旋转样式 | transition 过度效果设置 )
CSS3 2D 转换 - rotate 旋转 指的是 令 标签元素 在 二维坐标系中 , 顺时针 / 逆时针 旋转指定的度数 ;
韩曙亮
2023/04/24
1K0
【CSS3】CSS3 2D 转换 - rotate 旋转 ( transform: rotate(90deg) 旋转样式 | transition 过度效果设置 )
CSS3变形、渐变、动画的基本使用
CSS3 转换可以对元素进行移动、缩放、转动、拉长或拉伸。 转换的效果是让某个元素改变形状,大小和位置。 您可以使用 2D 或 3D 转换来转换您的元素。 2D变换方法: + translate() + rotate() + scale() + skew() 具体的详情描述可以看:菜鸟教程 简单使用代码
不愿意做鱼的小鲸鱼
2022/09/24
1.3K0
CSS3变形、渐变、动画的基本使用
推荐阅读
【CSS3】CSS3 2D 转换 - rotate 旋转 ④ ( 旋转案例 )
3420
【CSS3】CSS3 2D 转换 - scale 缩放 ② ( 使用 scale 设置缩放代码示例 - 图片缩放示例 )
2400
【CSS3】CSS3 3D 转换示例 - 盒子模型翻转示例 ( 开启透视视图 | 设置过渡动画 | 设置 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型背靠背效果 )
4040
【CSS3】CSS3 2D 转换 - rotate 旋转 ③ ( 使用 transfrom-origin 设置旋转中心点 | 使用 方位词 / 百分比值 / 像素值 设置旋转中心点 )
1.1K0
【CSS3】CSS3 3D 转换示例 - 3D 导航栏示例 ( 列表设置 | 透视视图 | 过渡动画 | 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型的效果 )
2120
【CSS3】CSS3 3D 转换示例 - 3D 旋转木马 ( @keyframes 规则 定义动画 | 为 盒子模型 应用动画 | 开启透视视图 | 设置 3D 呈现样式 )
5960
【CSS3】CSS3 2D 转换 - scale 缩放 ③ ( 使用 scale 设置制作可缩放的按钮案例 )
2430
CSS3 2D转换
4430
【CSS3】CSS3 2D 转换 - 三种变换的综合写法 ( 同时进行 移动 / 旋转 / 缩放 变换 | 代码示例 )
3090
什么C3转换还可以这样玩???用CSS3实现2D转换、3D转换、3D呈现,详细总结及案例演示。
8380
CSS3 2D和3D的使用
1.1K0
【CSS3】CSS3 2D 转换 - translate 平移 ( transform: translate 样式 | 百分比移动相对于元素自身尺寸 | 百分比移动实现绝对定位的居中效果 )
9820
【CSS3】CSS3 动画 ④ ( 使用动画制作地图热点图 )
3970
【移动端网页布局】移动端网页布局基础概念 ⑩ ( CSS3 盒子模型 box-sizing | 盒子模型尺寸 = 内容尺寸 = 内边距 + 边框宽度 | box-sizing 样式设置 )
1.1K0
「HTML&CSS」第二部分
2120
CSS3 transform 2D转换之移动 旋转 缩放(详细讲解看完就会)
1.3K0
【CSS3】CSS3 3D 转换 ⑤ ( 3D 呈现效果 - transform-style 属性 | transform-style 属性语法 | 设置 透视视图 效果 | 结构伪类选择器 )
9110
【CSS】盒子模型内边距 ② ( 内边距复合写法 | 代码示例 )
9180
【CSS3】CSS3 2D 转换 - rotate 旋转 ( transform: rotate(90deg) 旋转样式 | transition 过度效果设置 )
1K0
CSS3变形、渐变、动画的基本使用
1.3K0
相关推荐
【CSS3】CSS3 2D 转换 - rotate 旋转 ④ ( 旋转案例 )
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文