CSS笔记-3

一、过渡效果

1、过渡

transition

transition: width 0.5s ease-in 0s;

  • 所有数值类型的属性,都可以参与过渡,比如width、height left top border-radius opacity

    背景颜色和文字颜色都可以被过渡

    所有变形(包括 和 )都能被过渡

2、all

如果要所有属性都参与过渡,可以写all

3、四个小属性

二、 2D变形

关键字 transform

(1)移动

transform: translate(x, y); //水平垂直移动

长与tranition搭配使用

(2)缩放

transform:scale(x,y);

如果只写一个参数则宽高都变大

应用:鼠标移动标题图片放大

(3)旋转

img :hover { transform: rotate(90deg); /* deg 度数*/ }

旋转中心点

(4)倾斜

transform: skew(10deg,20deg); //x倾斜角,y倾斜角

三、3D变形

  •  x左边是负的,右边是正的
  • y上面是负的,下面是正的
  • z里面是负的,外面是正的

1、3D旋转

(1)将transform属性的值设置为rotatex()或者rotateY(),即可实现绕横轴、纵轴旋转

(2)perspective属性用来定义透视强度,可以理解为“人眼到舞台的距离”,单位是px

 

2、空间移动

四、动画

1、关键帧 @keyframes

keyframes表示“关键帧”,在项目上线前,要补上@-webkit-这样的私有前缀

2、动画的调用

(1)使用animation属性调用动画

 

 (2)第五个参数就是动画的执行次数

(3)如果想永远执行可以写infinite

(4)如果想让动画的第2 4 、 、6……(偶数次)

        自动逆向执行,那么要加上alternate参数即可(有来有回)

animation: movelr 2s linear infinite alternate 0s

如果想让动画停止在最后结束状态,那么要加上forwards

animation: changeToCircle 1s linear forwards;

3.例子

 .box1{
            width: 200px;
            height: 200px;
            background-color: orange;
            /* 应用动画 */
            animation: r 1s linear 0s infinite alternate;
        }
        
        /* 定义动画 */
        @keyframes r {
            from{
                transform: rotate(0);
            }to{
                transform: rotate(360deg);
            }
        }

4、多动画关键帧

五、其他

1、em和px换算

  • em的值并不是固定的;
  • em会继承父级元素的字体大小。

        为了简化font-size的换算,需要在css中的body选择器中先全局声明 Font-size=62.5%,很多初学者可能会在此定义0.625em或者直接定义12px,这是没有效果的,一定要定义font-size=62.5%!

        任意浏览器的默认字体高都是10px。所有未经调整的浏览器都符合: 1em=16px。那么12px=0.75em,10px=0.625em。

将你的原来的px数值除以16,然后换上em作为单位

<head>
	<title>1</title>
	<style type="text/css">
		.btn{
			padding: .3em .8em;
    		border: 1px solid #446d88;
    		background: #58a linear-gradient(#77a0bb, #58a);
    		border-radius: .2em;
    		box-shadow: 0 .05em .25em gray;
    		color: white;
    		text-shadow: 0 -.05em .05em #335166;
    		font-size: 200%;
    		line-height: 1.5;
		}
	</style>
</head>
<body>
	<div class="btn">按钮</div>
</body>

改变font-size大小,就会改变按钮整体大小

2、currentColor

例子:让所有的水平分割线(所有<hr>元素)自动与文本的颜色保持一致。

hr { height: .5em; background: currentColor; }

3、 继承 (inherit 属性)

        在CSS中,子元素会继承了父元素的一些样式属性。能够继承到子类的样式属性非常有限,仅是 文字、字体、颜色... 子类如果还想继承父类的属性,可以通过inherit 强制继承。

button { font: inherit; }

a { color: inherit; }

4、预处理器

Stylus(http://stylus-lang.com/)

Sass(http://sass-lang.com/)

LESS(http://lesscss.org/)

        这样的 CSS 预处理器。它们为 CSS的编写提供提供了一些便利,比如变量、mixin、函数、规则嵌套、颜色处理等。

5、DRY原则

        假设一个逻辑(代码块)会重复两次或者以上,应该写成函数被调用

6、background-clip 

        设置元素的背景(背景图片或颜色)是否延伸到边框下面

background-clip: border-box;

background-clip: padding-box;

 

7. outline: 外边框

 outline: 1px solid;

和border的区别:border占据空间,outline不占空间

8.vh视口

100vh

9.浏览器私有前缀

 background-image:-webkit-color:red;
 background-image:-moz-color:red;
 background-image:-ms-color:red;
 background-image:-o-color:red;

  • 39
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值