Css3 2D转换 2D转换之移动tranlate

转换(transform)是css3中具有颠覆性的特征之一,可以实现元素的位移、旋转、缩放等效果。

转换你可以简单理解为变形。

  1. 移动:translate
  2. 旋转:rotate
  3. 缩放:scale

2D转换是改变标签在二维平面上的位置和形状的一种技术,先来学习二维坐标系

2D转换之移动tranlate:

2D移动是2D转换里面的一种功能,可以改变元素在页面中的位置,类似定位

语法

Transform:tranlate(x,y);或者分开写

Tranform:tranlateX(n);

Tranform:tranlateY(n);

重点

  1. 定义2D转换中的移动,沿着X和Y轴移动元素
  2. Translate最大的优点:不会影响到其他元素的位置
  3. Translate中的百分比单位是相对于自身元素的translate:(50%,50%);
  4. 对行内标签没有效果

<!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>2D转换之translate</title>

    <style>

        /* 移动盒子的位置:定位 盒子的外边距 2d转换移动 */

        div {

            width: 200px;

            height: 200px;

            background-color: pink;

            /* x就是x轴上移动的距离 y就是y轴上移动的位置 中间用逗号隔开 */

            /* transform: translate(x,y); */

            /* transform: translate(100px, 100px); */

        }



        div:first-child {

            transform: translate(30px, 30px);

        }



        div:last-child {

            background-color: aquamarine;

        }

    </style>

</head>



<body>

    <div></div>

    <div></div>

</body>



</html>

通过translate实现水平垂直居中:

<!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>Document</title>

    <style>

        * {

            margin: 0;

            padding: 0;

        }



        div {

            position: relative;

            width: 200px;

            height: 200px;

            background-color: aquamarine;

            /* 1 translate 里面的参数是可以用百分数的 */

            /* 2 如果里面的参数是% 移动的距离是盒子自身的宽度或高度来对比的 */

            /* transform: translate(50%); */

        }



        p {

            position: absolute;

            top: 50%;

            left: 50%;

            width: 30px;

            height: 30px;

            background-color: aqua;

            transform: translate(-50%, -50%);

        }

    </style>

</head>



<body>

    <div>

        <p></p>

    </div>

</body>



</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值