html高级篇

news2024/12/23 22:30:17

1.2D转换

  转换(transform)你可以简单理解为变形

移动:translate

旋转:rotate

缩放:sCale

  1. 移动:translate
1.移动具体值
         /* 移动盒子的位置: 定位   盒子的外边距  2d转换移动 */

        

        div {

            width: 200px;

            height: 200px;

            background-color: pink;

            /* x就是x轴上移动位置 y 就是y轴上移动位置 中间用逗号分隔*/

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

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

            /* 1. 我们如果只移动x坐标 */

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

            /* transform: translateX(100px); */

            /* 2. 我们如果只移动y坐标 */

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

            /* transform: translateY(100px); */

        }

        

        div:first-child {

            transform: translate(30px, 30px);

        }

        

        div:last-child {

            background-color: purple;

        }
2.移动百分比
  div {

            position: relative;

            width: 500px;

            height: 500px;

            background-color: pink;

            /* 1. 我们tranlate里面的参数是可以用 % */

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

            /* 这里的 50% 就是 50px 因为盒子的宽度是 100px */

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

        }

        p {

            position: absolute;

            top: 50%;

            left: 50%;

            width: 200px;

            height: 200px;

            background-color: purple;

            /* margin-top: -100px;

            margin-left: -100px; */;

            /* 盒子往上走自己高度的一半    */

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

        }

2. 旋转:rotate

1.图片旋转
 img {

            width: 150px;

            /* 顺时针旋转45度 */

            /* transform: rotate(45deg); */

            border-radius: 50%;

            border: 5px solid pink;

            /* 过渡写到本身上,谁做动画给谁加 */

            transition: all 0.3s;

        }

        

        img:hover {

            transform: rotate(90deg);

        }

    </style>

</head>


<body>

    <img src="media/pic.jpg" alt="">

</body>
2.小三角
  div {

            position: relative;

            width: 249px;

            height: 35px;

            border: 1px solid #000;

        }  

        div::after {

            content: "";

            position: absolute;

            top: 8px;

            right: 15px;

            width: 10px;

            height: 10px;

            border-right: 1px solid #000;

            border-bottom: 1px solid #000;

            transform: rotate(45deg);

            transition: all 0.2s;

        }

        /* 鼠标经过div  里面的三角旋转 */

        

        div:hover::after {

            transform: rotate(225deg);

        }
  1. 设置旋转中心点

1.语法

transform-origin:xy;

2.重点

·注意后面的参数x和y用空格隔开

·xy默认转换的中心点是元素的中心点(50%50%)

·还可以给xy设置像素或者方位名词(top bottom left right center)

  div {

            width: 200px;

            height: 200px;

            background-color: pink;

            margin: 100px auto;

            transition: all 1s;

            /* 1.可以跟方位名词 */

            /* transform-origin: left bottom; */

            /* 2. 默认的是 50%  50%  等价于 center  center */

            /* 3. 可以是px 像素 */

            /* transform-origin: 80px 80px;         */

             /* transform-origin: top left; */

            transform-origin: bottom right ;

        }

        

        div:hover {

            transform: rotate(360deg);

        }
  1. 案例
         div {

            overflow: hidden;

            width: 200px;

            height: 200px;

            border: 1px solid pink;

            margin: 10px;

            float: left;

        } 

        div::before {

            content: "小猪佩奇";

            display: block;

            width: 100%;

            height: 100%;

            background-image: url("./media/pig.jpg");          

            transform: rotate(180deg);

            transform-origin: left bottom;

            transition: all 0.4s;

        }

        /* 鼠标经过div 里面的before 复原 */

        

        div:hover::before {

            transform: rotate(0deg);

        }

    </style>

</head>


<body>

    <div></div>

    <div></div>

    <div></div>
  1. 缩放:sCale
1.用法
         div {

            width: 200px;

            height: 200px;

            background-color: pink;

            margin: 100px auto;

            /* transform-origin: left bottom; */

        }

        

        div:hover {

            /* 1. 里面写的数字不跟单位 就是倍数的意思 1 就是1倍  2就是 2倍 */

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

            /* transform: scale(2, 2); */

            /* 2. 修改了宽度为原来的2倍  高度 不变 */

            /* transform: scale(2, 1); */

            /* 3. 等比例缩放 同时修改宽度和高度,我们有简单的写法  以下是 宽度修改了2倍,高度默认和第一个参数一样*/

            /* transform: scale(2); */

            /* 4. 我们可以进行缩小  小于1 就是缩放 */

            /* transform: scale(0.5, 0.5); */

            /* transform: scale(0.5); */

            /* 5. scale 的优势之处: 不会影响其他的盒子 而且可以设置缩放的中心点*/

            /* width: 300px;

            height: 300px; */

            transform: scale(2);

        }

    </style>

</head>


<body>

    <div></div>

    123123
2.按钮案例
 li {

            float: left;

            width: 30px;

            height: 30px;

            border: 1px solid pink;

            margin: 10px;

            text-align: center;

            line-height: 30px;

            list-style: none;

            border-radius: 50%;

            /* 小手 */

            cursor: pointer;

            transition: all .4s;

        }

        

        li:hover {

            transform: scale(1.2);

        }

    </style>

</head>


<body>

    <ul>

        <li>1</li>

        <li>2</li>

        <li>3</li>

        <li>4</li>

        <li>5</li>

        <li>6</li>

        <li>7</li>

    </ul>
3.综合案例
      div {

            width: 200px;

            height: 200px;

            background-color: pink;

            transition: all .5s;

        }

        

        div:hover {

            /* transform: rotate(180deg) translate(150px, 50px); */

            /* 我们同时有位移和其他属性,我们需要把位移放到最前面 */

            transform: translate(150px, 50px) rotate(180deg) scale(1.2);

        }

二.动画

 制作动画分为两步:

1.先定义动画

2.再使用(调用)动画

1.用keyframes定义动画(类似定义类选择器)

@keyframes 动画名称{

0%{

width:100px;

}

100%{

width:200px;

}

}

2.元素使用动画

div{

width:200px;height:200px;background-color:aqua;margin:100px auto;

/*调用动画*/

animation-name:动画名称;

/*持续时间*/

animation-duration:持续时间;}

1.简单的动画

        /* 我们想页面一打开,一个盒子就从左边走到右边 */

        /* 1. 定义动画 */

        

        @keyframes move {

            /* 开始状态 */

            0% {transform: translateX(0px);}

            /* 结束状态 */

            100% {transform: translateX(1000px);}

        }  

        div {

            width: 200px;

            height: 200px;

            background-color: pink;

            /* 2. 调用动画 */

            /* 动画名称 */

            animation-name: move;

            /* 持续时间 */

            animation-duration: 2s;

        }

2.动画序列

 /* from to 等价于  0% 和  100% */

        /* @keyframes move {

            from {

                transform: translate(0, 0);

            }

            to {

                transform: translate(1000px, 0);

            }

        } */

        /* 动画序列 */

        /* 1. 可以做多个状态的变化 keyframe 关键帧 */

        /* 2. 里面的百分比要是整数 */

        /* 3. 里面的百分比就是 总的时间(我们这个案例10s)的划分 25% * 10  =  2.5s */

        

        @keyframes move {

            0% {

                transform: translate(0, 0);

            }

            25% {

                transform: translate(1000px, 0)

            }

            50% {

                transform: translate(1000px, 500px);

            }

            75% {

                transform: translate(0, 500px);

            }

            100% {

                transform: translate(0, 0);

            }

        }

        

        div {

            width: 100px;

            height: 100px;

            background-color: pink;

            animation-name: move;

            animation-duration: 10s;

        }

3.动画属性

属性

         描述

@keyframes

规定动画

animation

所有动画属性的简写属性

animation-name

规定@keyframes动画的名称(必须的)

animation-duration

规定动画完成一个周期花费的秒或毫秒,默认是0。(必须的)

aniamtion-timing-function

规定动画的速度曲线,默认是‘ease’

animation-delay

规定动画何时开始,默认是0

animation-iteration-count

规定动画被播放的次数,默认是1,还有infinite

animation-direction

规定动画是否在下一周期逆向播放,默认是‘normal’,alternate逆向播放

animation-play-state

规定动画是否正在运行或暂停,默认是’running’,还有‘pause’

animation-fill-mode

规定动画结束后状态,保持forwards,回到起始backwards

 1.基本使用
@keyframes move {

            0% {

                transform: translate(0, 0);

            }

            100% {

                transform: translate(1000px, 0);

            }

        }

        

        div {

            width: 100px;

            height: 100px;

            background-color: pink;

            /* 动画名称 */

            animation-name: move;

            /* 持续时间 */

            animation-duration: 2s;

            /* 运动曲线 */

            /* animation-timing-function: ease; */

            /* 何时开始 */

            animation-delay: 2s;

            /* 重复次数  iteration 重复的 conut 次数  infinite  无限 */

            /* animation-iteration-count: infinite; */

            /* 是否反方向播放 默认的是 normal  如果想要反方向 就写 alternate */

            /* animation-direction: alternate; */

            /* 动画结束后的状态 默认的是 backwards  回到起始状态 我们可以让他停留在结束状态 forwards */

            /* animation-fill-mode: forwards; */

            /* animation: name duration timing-function delay iteration-count direction fill-mode; */

            /* animation: move 2s linear 0s 1 alternate forwards; */

            /* 前面2个属性 name  duration 一定要写 */

            /* animation: move 2s linear  alternate forwards; */

        }

        

        div:hover {

            /* 鼠标经过div 让这个div 停止动画,鼠标离开就继续动画 */

            animation-play-state: paused;

        }
2.大数据热图
 body {

            background-color: #333;

        }

        

        .map {

            position: relative;

            width: 747px;

            height: 616px;

            background: url(media/map.png) no-repeat;

            margin: 0 auto;

        }

        

        .city {

            position: absolute;

            top: 227px;

            right: 193px;

            color: #fff;

        }

        

        .tb {

            top: 500px;

            right: 80px;

        }

        

        .dotted {

            width: 8px;

            height: 8px;

            background-color: #09f;

            border-radius: 50%;

        }

        

        .city div[class^="pulse"] {

            /* 保证我们小波纹在父盒子里面水平垂直居中 放大之后就会中心向四周发散 */

            position: absolute;

            top: 50%;

            left: 50%;

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

            width: 8px;

            height: 8px;

            box-shadow: 0 0 12px #009dfd;

            border-radius: 50%;

            animation: pulse 1.2s linear infinite;

        }

        .city div.pulse2 {

            animation-delay: 0.4s;

        }

        

        .city div.pulse3 {

            animation-delay: 0.8s;

        }

        

        @keyframes pulse {

            0% {}

            70% {

                /* transform: scale(5);  我们不要用scale 因为他会让 阴影变大*/

                width: 40px;

                height: 40px;

                opacity: 1;

            }

            100% {

                width: 70px;

                height: 70px;

                opacity: 0;

            }

        }

    </style>

</head>


<body>

    <div class="map">

        <div class="city">

            <div class="dotted"></div>

            <div class="pulse1"></div>

            <div class="pulse2"></div>

            <div class="pulse3"></div>

        </div>

        <div class="city tb">

            <div class="dotted"></div>

            <div class="pulse1"></div>

            <div class="pulse2"></div>

            <div class="pulse3"></div>

        </div>

    </div>

1.文字打印效果
  div {

            overflow: hidden;

            font-size: 20px;

            width: 0;

            height: 30px;

            background-color: pink;

            /* 让我们的文字强制一行内显示 */

            white-space: nowrap;

            /* steps 就是分几步来完成我们的动画 有了steps 就不要在写 ease 或者linear 了 */

            animation: w 4s steps(10) forwards;

        }

        

        @keyframes w {

            0% {

                width: 0;

            }

            100% {

                width: 200px;

            }

        }

    </style>

</head>


<body>

    <div>世纪佳缘我在这里等你</div>
2.奔跑的熊大
  body {

            background-color: #ccc;

        }

        

        div {

            position: absolute;

            width: 200px;

            height: 100px;

            background: url(media/bear.png) no-repeat;

            /* 我们元素可以添加多个动画, 用逗号分隔 */

            animation: bear .6s steps(8) infinite, move 4s forwards;

        }

        

        @keyframes bear {

            0% {

                background-position: 0 0;

            }

            100% {

                background-position: -1600px 0;

            }

        }

        

        @keyframes move {

            0% {

                left: 0;

            }

            100% {

                left: 50%;

                /* margin-left: -100px; */

                transform: translateX(-50%);

            }

        }

    </style>

</head>


<body>

    <div></div>

三、3D转换

 三维坐标系其实就是指立体空间,立体空间是由3个轴共同组成的。

·x轴:水平向右注意:X右边是正值,左边是负值

·y轴:垂直向下注意:y下面是正值,上面是负值

·z轴:垂直屏幕注意:往外面是正值,往里面是负值

1.3D位移translate3d(x,y,z)

translform:translateX(100px):仅仅是在x轴上移动

translform:translateY(100px):仅仅是在Y轴上移动

translform:translateZ(100px):仅仅是在z轴上移动(注意:translateZ一般用px单位)transform:translate3d(x,y,):其中x、y、z分别指要移动的轴的方向的距离

 body {

            /* 透视写到被观察元素的父盒子上面 */

            perspective: 200px;

        }

        

        div {

            width: 200px;

            height: 200px;

            background-color: pink;

            /* transform: translateX(100px);

            transform: translateY(100px); */

            /* transform: translateX(100px) translateY(100px) translateZ(100px); */

            /* 1. translateZ 沿着Z轴移动 */

            /* 2. translateZ 后面的单位我们一般跟px */

            /* 3. translateZ(100px) 向外移动100px (向我们的眼睛来移动的) */

            /* 4. 3D移动有简写的方法 */

            /* transform: translate3d(x,y,z); */

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

            /* 5. xyz是不能省略的,如果没有就写0 */

            transform: translate3d(200px, 100px, 100px);

        }
  1. 透视perspective
  body {

            perspective: 600px;

            /* 透视写到被观擦元素的父盒子上面 */

        }

        

        div {

            width: 200px;

            height: 200px;

            background-color: pink;

            margin: 100px auto;

            transform: translateZ(0);

        }

    </style>

</head>


<body>

    <div></div>

    <div></div>

    <div></div>

</body>

3.3Drotate3d

body {

            perspective: 300px;

        }

        

        img {

            display: block;

            margin: 100px auto;

            transition: all 1s;

        }

        

        img:hover {

            transform: rotateX(45deg);

        }

    </style>

</head>


<body>

    <img src="media/pig.jpg" alt="">


  body {

            perspective: 500px;

        }

        

        img {

            display: block;

            margin: 100px auto;

            transition: all 1s;

        }

        

        img:hover {

            /* transform: rotateZ(180deg); */

            /* transform: rotate3d(x,y,z,deg); */

            /* transform: rotate3d(1, 0, 0, 45deg); */

            /* transform: rotate3d(0, 1, 0, 45deg); */

            transform: rotate3d(1, 1, 0, 45deg);

        }

    </style>

</head>


<body>

    <img src="media/pig.jpg" alt="">

4.3D呈现transform-style

·控制子元素是否开启三维立体环境。。

·transform-style:flat子元素不开启3d立体空间默认的

·transform-style:preserve-3d;子元素开启立体空间

·代码写给父级,但是影响的是子盒子

      body {

            perspective: 500px;

        }

        

        .box {

            position: relative;

            width: 200px;

            height: 200px;

            margin: 100px auto;

            transition: all 2s;

            /* 让子元素保持3d立体空间环境 */

            transform-style: preserve-3d;

        }

        

        .box:hover {

            transform: rotateY(60deg);

        }

        

        .box div {

            position: absolute;

            top: 0;

            left: 0;

            width: 100%;

            height: 100%;

            background-color: pink;

        }

        

        .box div:last-child {

            background-color: purple;

            transform: rotateX(60deg);

        }

    </style>

</head>


<body>

    <div class="box">

        <div></div>

        <div></div>

    </div>
  1. 双面反转

 1.搭建HTML结构

<div class="box">

<div class="front">黑马程序员</div>

<div class="back">pink老师等你</div>

</div>

·box父盒子里面包含前后两个子盒子

·box是翻转的盒子front是前面盒子back是后面盒子

body {

            perspective: 400px;

        } 

        .box {

            position: relative;

            width: 300px;

            height: 300px;

            margin: 100px auto;

            transition: all .4s;

            /* 让背面的紫色盒子保留立体空间 给父级添加的 */

            transform-style: preserve-3d;

        }

        

        .box:hover {

            transform: rotateY(180deg);

        }

        

        .front,

        .back {

            position: absolute;

            top: 0;

            left: 0;

            width: 100%;

            height: 100%;

            border-radius: 50%;

            font-size: 30px;

            color: #fff;

            text-align: center;

            line-height: 300px;

        }

        .front {

            background-color: pink;

            z-index: 1;

        }

        

        .back {

            background-color: purple;

            /* 像手机一样 背靠背 旋转 */

            transform: rotateY(180deg);

        }

    </style>

</head>


<body>

    <div class="box">

        <div class="front">黑马程序员</div>

        <div class="back">pink老师这里等你</div>

    </div>
  1. 旋转导航案例
  * {

            margin: 0;

            padding: 0;

        }

        

        ul {

            margin: 100px;

        }

        

        ul li {

            float: left;

            margin: 0 5px;

            width: 120px;

            height: 35px;

            list-style: none;

            /* 一会我们需要给box 旋转 也需要透视 干脆给li加 里面的子盒子都有透视效果 */

            perspective: 500px;

        }

        

        .box {

            position: relative;

            width: 100%;

            height: 100%;

            transform-style: preserve-3d;

            transition: all .4s;

        }

        

        .box:hover {

            transform: rotateX(90deg);

        }

        

        .front,

        .bottom {

            position: absolute;

            left: 0;

            top: 0;

            width: 100%;

            height: 100%;

        }

        

        .front {

            background-color: pink;

            z-index: 1;

            transform: translateZ(17.5px);

        }

        

        .bottom {

            background-color: purple;

            /* 这个x轴一定是负值 */

            /* 我们如果有移动 或者其他样式,必须先写我们的移动 */

            transform: translateY(17.5px) rotateX(-90deg);

        }

    </style>

</head>


<body>

    <ul>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

        <li>

            <div class="box">

                <div class="front">黑马程序员</div>

                <div class="bottom">pink老师等你</div>

            </div>

        </li>

    </ul>
  1. 旋转木马
  body {

            perspective: 1000px;

        }

        

        section {

            position: relative;

            width: 300px;

            height: 200px;

            margin: 150px auto;

            transform-style: preserve-3d;

            /* 添加动画效果 */

            animation: rotate 10s linear infinite;

            background: url(media/pig.jpg) no-repeat;

        }

        

        section:hover {

            /* 鼠标放入section 停止动画 */

            animation-play-state: paused;

        }

        

        @keyframes rotate {

            0% {

                transform: rotateY(0);

            }

            100% {

                transform: rotateY(360deg);

            }

        }

        

        section div {

            position: absolute;

            top: 0;

            left: 0;

            width: 100%;

            height: 100%;

            background: url(media/dog.jpg) no-repeat;

        }

        /* 正对着的图片 z轴*/

        section div:nth-child(1) {

            transform: rotateY(0) translateZ(300px);

        }

        /* 右边的图片 */

        section div:nth-child(2) {

            /* 先旋转好了再 移动距离 */

            transform: rotateY(60deg) translateZ(300px);

        }

        

        section div:nth-child(3) {

            /* 先旋转好了再 移动距离 */

            transform: rotateY(120deg) translateZ(300px);

        }

        

        section div:nth-child(4) {

            /* 先旋转好了再 移动距离 */

            transform: rotateY(180deg) translateZ(300px);

        }

        

        section div:nth-child(5) {

            /* 先旋转好了再 移动距离 */

            transform: rotateY(240deg) translateZ(300px);

        }

        

        section div:nth-child(6) {

            /* 先旋转好了再 移动距离 */

            transform: rotateY(300deg) translateZ(300px);

        }

    </style>

</head>


<body>

    <section>

        <div></div>

        <div></div>

        <div></div>

        <div></div>

        <div></div>

        <div></div>

    </section>

四、浏览器私有前缀

-moz-:代表firefox 浏览器私有属性

-ms-:代表ie浏览器私有属性

-webkit-:代表safari、chrome私有属性

-o-:代表Opera私有属性

2.提倡的写法

-moz-border-radius:10px;

-webkit-border-radius:10px;

-o-border-radius:10px;border-radius:10px;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1893683.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CIDEr(Consensus-based Image Description Evaluation)的计算

CIDEr&#xff08;Consensus-based Image Description Evaluation&#xff09; 论文原文 CIDEr: Consensus-based Image Description Evaluation CIDEr&#xff08;Consensus-based Image Description Evaluation&#xff09;是一种用于自动评估图像描述&#xff08;image ca…

吴恩达深度学习笔记:机器学习策略(2)(ML Strategy (2)) 2.3-2.4

目录 第三门课 结构化机器学习项目&#xff08;Structuring Machine Learning Projects&#xff09;第二周&#xff1a;机器学习策略&#xff08;2&#xff09;(ML Strategy (2))2.3 快速搭建你的第一个系统&#xff0c;并进行迭代&#xff08;Build your first system quickly…

师从IEEE fellow|博士后加拿大阿尔伯塔大学成行

V老师指定申请加拿大&#xff0c;优先对方出资的博士后&#xff0c;如果外方无资助&#xff0c;也可以自筹经费&#xff0c;但要求必须是博士后头衔。最终我们为其落实了加拿大阿尔伯塔大学的postdoctoral fellow&#xff08;博士后研究员&#xff09;&#xff0c;尽管是无薪职…

三菱plc gxwork3 0X121201F 报错;三菱标签区域的保留容量不足;

如果占用过多把r文件寄存器的地址范围改小&#xff0c;一般文件寄存器的地址r0-8000足够了

腾讯课堂即将停止服务?来试试这款开源的知识付费系统

项目介绍 本系统基于ThinkPhp5.0layuiVue开发,功能包含在线直播、付费视频、付费音频、付费阅读、会员系统、分销系统、拼团活动、直播带货、直播打赏、商城系统等。能够快速积累客户、会员数据分析、智能转化客户、有效提高销售、吸引流量、网络营销、品牌推广的一款应用&…

2024 世界人工智能大会暨人工智能全球治理高级别会议全体会议在上海举办,推动智能向善造福全人类

2024 年 7 月 4 日&#xff0c;2024 世界人工智能大会暨人工智能全球治理高级别会议-全体会议在上海世博中心举办。联合国以及各国政府代表、专业国际组织代表&#xff0c;全球知名专家、企业家、投资家 1000 余人参加了本次会议&#xff0c;围绕“以共商促共享&#xff0c;以善…

微软发布了Win11 24H2版本的首个设置动态更新和恢复!

系统之家于7月3日发出最新报道&#xff0c;微软针对Win11 24H2版本发布了首个设置动态更新(Setup Dynamic Update)KB5039448。此次更新主要改进了Win11 24H2的安装文件以及用户在升级、安装到24H2版本过程中可能会使用到的所有文件。 系统之家附上 Windows 11 24H2 的完整发布时…

mac视频压缩简单办法,mac如何把视频压缩到指定大小内存

在数字时代&#xff0c;视频已成为我们日常生活和工作的重要交流工具。然而&#xff0c;视频文件体积庞大&#xff0c;给存储和分享带来了不少困扰。本文将为你揭秘视频压缩的秘密&#xff0c;让你轻松减小视频文件体积&#xff0c;提升分享效率&#xff01; 方法一下载文件压缩…

PLC工作原理

PLC&#xff08;可编程逻辑控制器&#xff09;的工作原理简述为&#xff1a;集中采样、集中输出、周期性循环扫描。 西门子PLC 一、集中采样 顺序读取所有输入端子的通断状态&#xff0c;并将所读取的信息存到输入映像寄存器中&#xff0c;此时输入映像寄存器被刷新&#xff…

Pylons 和 Flex 3

“Pylons” 和 “Flex 3” 是两个不同的技术&#xff0c;各自有着不同的背景和应用场景&#xff1a; Pylons Pylons 是一个 Python Web 框架&#xff0c;用于快速开发 Web 应用程序。它强调简单性、灵活性和可扩展性&#xff0c;以便开发人员能够快速构建和部署功能强大的 We…

100个名人的家,娄艺潇的家:大美国色,浪漫栖居

冠珠瓷砖「100个名人的家」&#xff0c;大美筑家&#xff0c;中国冠珠2024大美筑家之旅&#xff0c;冠珠瓷砖「100个名人的家」&#xff0c;探索中国人的烟火浪漫与美学追求。从中国家文化、人文居所、人生底蕴层面&#xff0c;发掘大美人居的故事&#xff0c;以中国瓷砖、空间…

TypeError: Cannot read properties of null (reading ‘nextSibling‘)

做项目用的Vue3Vite, 在画静态页面时&#xff0c;点击菜单跳转之后总是出现如下报错&#xff0c;百思不得其解。看了网上很多回答&#xff0c;也没有解决问题&#xff0c;然后试了很多方法&#xff0c;最后竟然发现是template里边没有结构的原因。。。 原来我的index.vue是这样…

java基础:数组

一、概述 1、数组是相同类型数据的有序集合 2、数组描述的是相同类型的若干个数据&#xff0c;按照一定的先后次序排列组合而成 3、每一个数据称作一个数组元素&#xff0c;每个数组元素可以通过一个下标来访问它们 二、声明创建 1、先声明数组变量&#xff0c;才能在程序中…

原创作品 —(金融行业)年金系统交互和视觉设计

金融行业软件交互设计要点&#xff1a;“简化操作流程&#xff0c;确保流畅易用&#xff0c;同时注重交易环境的安全可靠&#xff0c;通过个性化体验提升用户满意度&#xff0c;并及时收集反馈以持续优化。” 2.UI设计要点&#xff1a;“注重视觉效果与用户体验的平衡&#xff…

从CVPR 2024看 NeRF 最新改进&应用

三维重建领域必不可少的NeRF技术最近又有新突破了&#xff01; 首先是SAX-NeRF框架&#xff0c;专为稀疏视角下X光三维重建设计&#xff0c;无需CT数据进行训练&#xff0c;只使用 X 光片即可&#xff0c;等于给NeRF开透视眼&#xff01; 还有清华提出的GenN2N&#xff0c;一…

7月2日PythonDay1

阶段一阶段导学 测试人员为什么要学习编程&#xff1f; Python是一门快速增长的计算机编程语言 白盒测试、自动化测试、测试开发 为什么学习Python&#xff1f; 相对于其他编程语言更简单 语言开源并且免费 使用人群广泛 应用领域广泛 学习目标 掌握python基础语法&…

你们叫AI,我们叫DI

大家好&#xff0c;才是真的好。 最近Notes/Domino产品在做哪些更新&#xff0c;想必大家都很好奇。 从2022年年末到现在&#xff0c;快两年了&#xff0c;任何一个有追求的大企业或巨头&#xff0c;应该都在追求实现一件事情&#xff1a;AI人工智能。 从小道消息来看&#…

Django创建项目

虚拟环境创建成功 使用命令行创建项目 创建一个文件夹&#xff0c;用pycharm打开&#xff0c;将之前创建好的虚拟环境选中&#xff08;这一步不在仔细赘述了&#xff0c;比较简单&#xff09; cd进入虚拟环境所在文件目录&#xff0c;打开虚拟环境pipenv shell 创建django项…

PDF怎么分割成一页一页的?原来可以这么轻松

PDF怎么分割成一页一页的&#xff1f;PDF文档因其跨平台兼容性和可打印性而被广泛使用&#xff0c;但有时为了便于发送电子邮件、管理文档或保护敏感信息&#xff0c;我们需要将一个大型的PDF文件分割成多个小文件。幸运的是&#xff0c;分割PDF文件并不复杂。下文中就介绍了三…

【讲解下AI Native应用中的模型微调】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…