css3整理(二)

css3边框

boder-radius

两个参数:左上右下, 右上左下(具体数值就是远的半径)

四个参数:左上 右上 右下 左下 (顺时针)

box-shadow

参数:水平距离  垂直距离  模糊边框  模糊半径  颜色 是否在边界内部(inset/默认为outset)

css3背景

background-size:背景大小

background-size : contain;

background-size : cover;

background-size : 100% 100%;

background-orgin : 背景位置

background-orgin : border-box;

background-orgin : padding-box;

background-orgin : content-box;

这里我都给了padding值,比较一下,可以得出:

值为border-box时,border在content中;

值为content-box时,padding在content中;

值为padding-box时,padding在border和content中间。

css3变形

transform:

translate( ) 位移移动

transform的translate位移操作
            跟相对定位类似,不脱离文档流,而且也不影响其他元素的位置
            translate位移
                两个参数 : x , y, z
                translateX()   translateY() translateZ();

css

.stage {
                width: 300px;
                height: 300px;
                margin: 20px;
                float: left;
                position:relative;
                background: url(img/bg.jpg);
                perspective: 800px;
                /*视距, perspective 给要变形元素的父元素加上这个属性
                 * 眼睛跟屏幕的距离*/

这里给s2 img2 在z轴上移动了400px,所以给一个800px的视距能有一个远近的效果
            }
            .stage .container{
                position: absolute;
                left: 50%;
                top:50%;
                margin-left: -35px;
                margin-top: -50px;
            }
       
            .stage .container img{
                position: absolute;
                left:0px;
                top:0px;
            }
           
            .stage .container img:nth-child(1){
                opacity: 0.5;
            }
           
           
            .s1 .container img:nth-child(2){
                transform: translate(100px,100px);
                /*transform: translateY(-100px);*/
                /*transform: translateX(-100px);*/
            }
           
            .s2 .container img:nth-child(2){
                transform: translateZ(400px); /*视距感觉图片变大*/
                /*transform: translateZ(-400px);*//*视距感觉图片变小*/
            }

html

<div class="stage s1">
            <div class="container">
                <img src="img/cardKingClub.png" width="70" height="100" />
                <img src="img/cardKingClub.png" width="70" height="100" />
            </div>

</div>
<div class="stage s2">
            <div class="container">
                <img src="img/cardKingClub.png" width="70" height="100" />
                <img src="img/cardKingClub.png" width="70" height="100" />
            </div>

</div>

scale( ) 大小缩放

这个原理和背景图片大小是一样的,比较好理解。

rotate( ) 旋转

transform: rotateX(40deg);

transform: rotateY(-40deg);

补充:   
               (1)如果rotate 中值是正数  就是 顺时针 旋转度数 , 如果是负数就是逆时针旋转度数
               (2)如果 rotate(45deg) ===  rotateZ(45deg)
               (3)rotate3d(0,1,1,30deg) 标示你是否希望沿着该轴旋转,是为1,不是为0,最后一个标示旋转的角度。
               (4)默认以中心点旋转,transform-origin : 水平 垂直;  这样设置参照的中心点

skew( ) 倾斜

这玩意,没怎么见过,就动手试了一下 :)

transform: skewX(30deg);

transform: skewY(-30deg);

transform: skew(30deg,30deg);

补:

perspective 视距 景深
perspective-origin 属性指定了观察者关注的位置
transform-style (preserve-3d) 建立3D空间
backface-visibility 隐藏背面

css3过渡

transition:

参数:属性   持续时间   延迟时间   运动形式

拆分写为:

transition-property
transition-duration
transition-delay负数的是提前执行
transition-timing-function(linear, ease, ease-in, ease-out,ease-in-out) 加速度的形式

对应的事件:

<div id="div1">
            <div id="div2"></div>

</div>
        <script>
            var oDiv2 = document.getElementById(‘div2‘);

oDiv2.addEventListener(‘transitionend‘, function(ev) {
                console.log(ev);
                if(ev.propertyName =="transform"){
                    oDiv2.style.background = "yellow";
                }
            }, false);

//transitionend : 当css3过渡时间结束的时候,就触发这个事件
        </script>

css3动画

animation

animation-direction   运动执行的方式
animation-play-state 运动执行状态  pasted 和 running
animation-fill-mode  
     forwards 当动画完成以后,保持最后一个属性

backwards 动画显示之前,应用该属性
@keyframes   有三种写法  1.from to  2个关键字

2.10% 50% 100%   多个百分比值来执行固定时间的动画

3.animation: steps()   针对整合好的spirt图通过固定频率形成动画

对应的事件:

<div id="div1"></div>

<script>
    var oDiv = document.getElementById(‘div1‘);

oDiv.addEventListener(‘animationstart‘, function() {
        console.log("动画开始");
    }, false);
    oDiv.addEventListener(‘animationend‘, function() {
        console.log("动画结束");
    }, false);
    oDiv.addEventListener(‘animationiteration‘, function(ev) {
        console.log(ev.elapsedTime); //总时间(每一次时间的累加和)
    }, false);

//animationstart : 当css3的animation开始的时候触发的事件
    //animationend : 当css3的animation结束的时候触发的事件
    //animationiteration : 当css3的animation多次的时候触发的事件(每走一次就触发一下) 总次数 是 n-1  , n 是动画执行的次数
</script>

动画实例

不会gif,先用静态的代替一下--

html

* {
            margin: 0;
            padding: 0;
        }
       
        ul {
            margin: 100px;
        }
       
        li {
            list-style: none;
        }
       
        li {
            width: 5px;
            height: 30px;
            background: green;
            float: left;
            margin-right: 5px;
            animation: runLine 2s infinite linear;
        }
       
        @keyframes runLine{
            0%{
                transform: scaleY)(1);
            }
            50%{
                transform: scaleY(0.5);
            }
            100%{
                transform: scaleY(1);
            }
        }
        ul li:nth-of-type(1){
            animation-delay: 0;
        }
        ul li:nth-of-type(2){
            animation-delay: -.2s;
        }
        ul li:nth-of-type(3){
            animation-delay: -.4s;
        }
        ul li:nth-of-type(4){
            animation-delay: -.6s;
        }
        ul li:nth-of-type(5){
            animation-delay: -.8s;
        }
        ul li:nth-of-type(6){
            animation-delay: -1s;
        }

html

<ul>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>
            <li></li>

</ul>

最后放rotate坐标轴和skew坐标轴、还有transition的运动形式吧。

     

时间: 2024-10-11 01:26:01

css3整理(二)的相关文章

AJAX学习整理二之简单实例

做了几个简单的实例,加载txt文本内容.加载xml文件内容,把xml文本内容转换成html表格显示.废话不多说,直接贴代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/html"> <head>     <title>通过ajax获取文本内容</title>     <meta charset="utf-8">     <scr

Windows Azure 实验培训学习与交流(官方版整理二)

Windows Azure 技术更新比较快,也许有很多人下面的都已看过,为以后我们好回头可以查看,也为还没有看到这些官方材料的小伙伴们带来一些帮助,如下是整理的官方版实验材料都以链接形式呈现,方便大家学习和交流. 微软培训材料下载 http://windowsazure-trainingkit.github.io/index.htm 注:Github作为培训材料的存储库微软所有配套的材料都会及时更新到Github上 目前微软团队已将大部分培训材料翻译成中文 https://github.com/

java面试题整理二(转灰灰+灰灰)

java 开发面试题小整理(二) 51.Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口? 答:可以继承其他类或实现其他接口,在Swing编程和Android开发中常用此方式来实现事件监听和回调. 52.内部类可以引用它的包含类(外部类)的成员吗?有没有什么限制? 答:一个内部类对象可以访问创建它的外部类对象的成员,包括私有成员. 53.Java 中的final关键字有哪些用法? 答:(1)修饰类:表示该类不能被继承: (2)修饰方法:表示方法不能被重

Linux常见命令整理(二)

权限设置 chmod  改变文件或目录的权限 格式 chmod 参数  文件名 r-读 w-写 x-执行 u-user 所有者 g-group 所属组 o-others 其他人 a-all 所有人 + 添加某个权限 - 取消某个权限 =  赋予给定权限并取消原来所有权限 除此之外,也可以使用数字来表示权限 r = 4 w = 2 x = 1 例如:chmod 777 a 代表修改文件a的权限是-rwxrwxrwx 其他的权限类似 chown 改变某个文件或目录的所有者 格式 chown 用户 文

C#与C++数据类型比较及结构体转换(搜集整理二)

原文网址:http://www.blogjava.net/heting/archive/2010/03/20/315998.html C++ C# ===================================== WORD ushort DWORD uint UCHAR int/byte 大部分情况都可以使用int代替,而如果需要严格对齐的话则应该用bytebyte UCHAR* string/IntPtr unsigned char* [MarshalAs(UnmanagedType

javascript 基础学习整理 二 之 html对象总结,参考W3C

Anchor 对象 更改一个链接的文本.URL 以及 target 使用 focus() 和 blur() 向超链接添加快捷键 Document 对象 使用 document.write() 向输出流写文本 使用 document.write() 向输出流写 HTML 返回当前文档的标题 返回当前文档的 URL 返回当前文档的 referrer 返回下载当前文档的服务器域名 使用 getElementById() 使用 getElementsByName() 打开一个新的文档,添加一些文本,然后

算法整理(二)---快速排序的两种实现方式:双边扫描和单边扫描

首先简单谈下快速排序的特点,时间复杂度O(nLog n),最差时间复杂度O(n^2),平均时间O(nLog n).因为用到了函数栈,空间复杂度为O(lg n),最差为O(n).是一种不稳定的排序方法.基本思想是分治法,这位大大的http://blog.csdn.net/morewindows/article/details/6684558 讲的非常清楚了,分治法+挖坑法,我就不多说了.就是以某个数为参照,使得左边的都小于他,右边的数都大于他.然后对他的左右两个区间采取同样的方法进行递归. 就其整

算法整理(二)---高速排序的两种实现方式:双边扫描和单边扫描

首先简单谈下高速排序的特点,时间复杂度O(nLog n),最差时间复杂度O(n^2),平均时间O(nLog n).由于用到了函数栈,空间复杂度为O(lg n),最差为O(n).是一种不稳定的排序方法.基本思想是分治法,这位大大的http://blog.csdn.net/morewindows/article/details/6684558 讲的很清楚了,分治法+挖坑法,我就不多说了.就是以某个数为參照,使得左边的都小于他,右边的数都大于他.然后对他的左右两个区间採取相同的方法进行递归. 就其总体

Deep Learning(深度学习)学习笔记整理(二)

本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流. [1]Deep learning简介 [2]Deep Learning训练过程 [3]Deep Learning模型之:CNN卷积神经网络推导和实现 [4]Deep Learning模型之:CNN的反向求导及练习 [5]Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN [6]Deep Learning模型之:CNN卷积神经网络(二)文字识别系统LeNet-5 [7]Deep Learning