HTML5前端开发入门之CSS 2D转换模块

2D转换模块

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>55-2D转换模块</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        ul{
            width: 800px;
            height: 500px;
            border: 1px solid #000;
            margin: 0 auto;
        }
        ul li{
            list-style: none;
            width: 100px;
            height: 50px;
            background-color: red;
            margin: 0 auto;
            text-align: center;
            line-height: 50px;
            margin-top: 50px;
        }
        ul li:nth-child(2){
            /*其中dge是单位*/
            transform: rotate(40deg);
        }
        ul li:nth-child(3){
            /*第一个参数水平,第二个参数垂直*/
            transform: translate(200px,50px);
        }
        ul li:nth-child(4){
            /*
            第一个参数水平,第二个参数垂直
            注意点:
            如果取值是1,代表不变
            如果取值大于1,代表需要放大
            如果取值小于1,代表需要缩小
            如果水平垂直缩放都一样,那么可以简写为一个参数
            */
            transform:scale(1.5,0.5);
        }
        ul li:nth-child(5){
            /*
            注意点:
            1.如果需要进行多个转换,那么用空格隔开
            2.2D的转换模块会修改元素的坐标系,所以旋转以后再平移,就不是水平平移了
            */
            transform: rotate(45deg) translate(200px,50px) scale(1.5,0.5);
        }
    </style>
</head>
<body>
<ul>
    <li>正常的</li>
    <li>旋转的</li>
    <li>平移的</li>
    <li>缩放的</li>
    <li>综合的</li>
</ul>
</body>
</html>

2D转换模块之形变中心点及旋转轴向

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>2D转换模块形变中心点</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        ul{
            width: 200px;
            height: 200px;
            border: 1px solid #000;
            margin: 300px auto;
            position: relative;
            /*
            1.什么是透视
            近大远小

            值越大,效果越大

            2.注意点:
            一定要注意,透视属性必须添加到需要呈现近大远小效果的
            元素的父元素上面(上级元素也可,最好为父级)
            */
            perspective: 200px;
        }
        ul li{
            list-style: none;
            width: 200px;
            height: 200px;
            position: absolute;
            top: 0;
            left: 0;
            /*
            第一个参数:水平方向
            第二个参数:垂直方向
            注意点:
            取值有三种形式
            1具体像素
            2百分比
            3特殊关键字

            */
            /*transform-origin: 200px 200px;*/
            /*transform-origin: 0 100%;*/
            transform-origin: center center;
        }
        ul li:nth-child(1){
            /*
            默认情况下所有的元素都是以自己的中心点作为参考来旋转的,
            我们可以通过形变中心点属性来修改它的参考点
            */
            background-color: red;
            /*transform: rotate(30deg);*/
            /*
            默认情况下所有的元素都是围绕Z轴进行旋转
            想围绕哪个轴转,那么只需要在rotate后面加上哪个轴即可
            */
            transform: rotateX(30deg);
        }
        ul li:nth-child(2){
            background-color: green;
            transform: rotateY(50deg);
        }
        ul li:nth-child(3){
            background-color: blue;
            transform: rotate(70deg);
        }
    </style>
</head>
<body>
<!--

-->
<ul>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_41886761/article/details/86078193