0、前言

css3常用属性在用的时候总有那么一两点记不住,每次去搜教程,重复做功,自己动手,在这简记一下,加深印象。

1、css3圆角border-radius (IE9+)

使用 CSS3 border-radius 属性,你可以给任何元素制作 "圆角"。如果你要在四个角上一一指定,可以使用以下规则:

  • 四个值: 第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角;
  • 三个值: 第一个值为左上角, 第二个值为右上角和左下角,第三个值为右下角;
  • 两个值: 第一个值为左上角与右下角,第二个值为右上角与左下角;
  • 一个值:四个圆角值相同;

用纯css3写一个Opera浏览器logo,

.opera-outer {width: 258px;height: 278px;background-color: #f22629;    border-radius: 129px/139px;position: relative;
}
.opera-inner {width: 116px;height: 236px;background-color: #fff;    border-radius: 58px/118px;position: absolute;left: 70px;top: 20px;
}

get到知识点:
border-radius: 129px/139px;这种写法,129px是椭圆水平半径,139px是椭圆垂直半径。当椭圆半径和超出宽高时,会自动缩放椭圆以满足镶嵌在矩形里。

2、css3背景

2.1 background-image (ie9+)

添加多背景图片

background: url( "../image/img_flwr.gif" ) right bottom no-repeat, url("../image/paper.gif") left top repeat;

等价于

background-image: url("../image/img_flwr.gif"), url("../image/paper.gif");
background-position: right bottom, left top;
background-repeat: no-repeat, repeat;

2.2 background-orign(ie9+)

指定了背景图像的位置区域,取值:border-boxpadding-boxcontent-box

2.3 background-clip(ie9+)

背景剪裁属性是从指定位置开始绘制,取值:border-boxpadding-boxcontent-box

综合知识点绘制如下

background: url( "../image/img_flwr.gif" ) right bottom no-repeat, url("../image/paper.gif") left top repeat;
border: 20px solid rgba( 0, 0, 0, 0.1 );
padding: 20px;
background-origin: border-box;
background-clip: content-box;

3、css3渐变 linear-gradient (IE10+)

3.1 默认从上到下渐变

#grad {background: -webkit-linear-gradient(red, yellow); /* Safari 5.1 - 6.0 */background: -o-linear-gradient(red, yellow); /* Opera 11.1 - 12.0 */background: -moz-linear-gradient(red, yellow); /* Firefox 3.6 - 15 */background: linear-gradient(red, yellow); /* 标准的语法 */
}

3.2 从左向右渐变

#grad {background: -webkit-linear-gradient(left, red, yellow); /* Safari 5.1 - 6.0 */background: -o-linear-gradient(left, red, yellow); /* Opera 11.1 - 12.0 */background: -moz-linear-gradient(left, red, yellow); /* Firefox 3.6 - 15 */background: linear-gradient(to right, red, yellow); /* 标准的语法 */
}

3.3 有角度的变换

#grad {background: -webkit-linear-gradient(90deg, red, yellow); /* Safari 5.1 - 6.0 */background: -o-linear-gradient(90deg, red, yellow); /* Opera 11.1 - 12.0 */background: -moz-linear-gradient(90deg, red, yellow); /* Firefox 3.6 - 15 */background: linear-gradient(90deg, red, yellow); /* 标准的语法 */
}

3.4 对角线

#grad {background: -webkit-linear-gradient(left top, red, yellow); /* Safari 5.1 - 6.0 */background: -o-linear-gradient(left top, red, yellow); /* Opera 11.1 - 12.0 */background: -moz-linear-gradient(left top, red, yellow); /* Firefox 3.6 - 15 */background: linear-gradient(to right bottom, red, yellow); /* 标准的语法 */
}

3.5 重复线性渐变 repeating-linear-gradient

#grad {/* Safari 5.1 - 6.0 */background: -webkit-repeating-linear-gradient(red, yellow 10%, green 20%);/* Opera 11.1 - 12.0 */background: -o-repeating-linear-gradient(red, yellow 10%, green 20%);/* Firefox 3.6 - 15 */background: -moz-repeating-linear-gradient(red, yellow 10%, green 20%);/* 标准的语法 */background: repeating-linear-gradient(red, yellow 10%, green 20%);
}

3.6 径向渐变 radial-gradient

#grad {/* Safari 5.1 - 6.0 */background: -webkit-radial-gradient(circle, red 5%, yellow 15%, green);/* Opera 11.1 - 12.0 */background: -o-radial-gradient(circle, red 5%, yellow 15%, green);/* Firefox 3.6 - 15 */background: -moz-radial-gradient(circle, red 5%, yellow 15%, green);/* 标准的语法 */background: radial-gradient(circle, red 5%, yellow 15%, green);
}

3.7 重复径向渐变 repeating-radial-gradient

#grad {/* Safari 5.1 - 6.0 */background: -webkit-repeating-radial-gradient(red, yellow 5%, green 10%);/* Opera 11.1 - 12.0 */background: -o-radial-repeating-gradient(red, yellow 5%, green 10%);/* Firefox 3.6 - 15 */background: -moz-radial-repeating-gradient(red, yellow 5%, green 10%);/* 标准的语法 */background: repeating-radial-gradient(red, yellow 5%, green 10%);
}

4、css3文本效果

4.1 text-shadow (IE10+)

text-shadow: 4px 4px 4px #F00; (x轴偏移量,y轴偏移量,阴影模糊半径,阴影颜色)

4.2 box-shadow (IE9+)

box-shadow: 0px 0px 4px 4px #ccc;(x轴偏移量,y轴偏移量,阴影模糊半径,阴影拓展半径,阴影颜色)

多个阴影之间用逗号分隔
box-shadow: 0px -4px 4px 0px black,0px 4px 4px 0px red,4px 0px 4px 0px green,-4px 0px 4px 0px blue;

注意,当有两个阴影重叠时,在前面设置阴影在上层

在低版本的ie下使用shadow滤镜,filter:progid:DXImageTransform.Microsoft.Shadow(color=’颜色值’, Direction=阴影角度(数值),Strength=阴影半径(数值));

注意:该滤镜必须配合background属性一起使用,否则该滤镜失效。

4.3 text-overflow (IE9+)

指定应向用户如何显示溢出内容

overflow: hidden;
text-overflow: ellipsis; /* clip */
white-space: nowrap; /*文本在同一行,直到有<br>标签*/
/*可能取值:normal默认换行,空白忽略, pre行为类似标签pre,nowrap不换行,pre-wrap空白换行,pre-line合并空格换行*/

4.4 word-wrap break-word

word-wrap: break-word; /* 允许长文本换行 */
break-word: all-break; /* 允许单词拆分换行 */

5、css3 2D转换 (IE10+ IE9 -ms)

5.1 translate 偏移

IE9需要-ms前缀,Safari和chrome需要-webkit前缀

transform: translate(<length>[, <length>]); // 第一个参数x方向长度,第二个参数y方向长度
transform: translateX(<length>);
transform: translateY(<length>);

5.2 rotate 旋转

transform: rotate(ndeg);

5.3 scale 缩放

transform: scale(<number>[, <number>]);
transform: scaleX(<number>);
transform: scaleY(<number>);

5.4 skew 倾斜

transform: skew(<angle> [, <angle>]);
transform: skewX(<angle>);
transform: skewY(<angle>);

5.5 matrix 矩阵转换

matrix(<number>,<number>,<number>,<number>,<number>,<number>):
以一个含六值的(a,b,c,d,e,f)变换矩阵的形式指定一个2D变换,相当于直接应用一个[a,b,c,d,e,f]变换矩阵

6、css3 3D转换 (IE10+)

6.1 rotateX 绕x轴旋转

transform: rotateX(ndeg);

6.2 rotateY绕y轴旋转

transform: rotateY(ndeg);

7、css3 过渡 transition(IE10+)

css3过渡是元素从一种样式逐渐改变为另一种的效果。要实现这一点,必须规定两项内容:指定添加效果的css属性,指定效果的持续时间。

transition-property
检索或设置对象中的参与过渡的属性

transition-duration
检索或设置对象的持续时间

transition-timing-function
检索或设置对象中过渡的动画类型

transition-delay
检索或设置对象延迟过渡的时间

For Example:
可以为同一个元素的多个属性定义过渡效果
缩写:

transition:border-color .5s ease-in .1s, background-color .5s ease-in .1s, color .5s ease-in .1s;

等价拆分:

transition-property:border-color,background-color,color;
transition-duration:.5s;
transition-timing-function:ease-in;
transition-delay:.1s;

过渡类型

  • linear

线性过渡。等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0)

  • ease

平滑过渡。等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0)

  • ease-in

由慢到快。等同于贝塞尔曲线(0.42, 0, 1.0, 1.0)

  • ease-out

由快到慢。等同于贝塞尔曲线(0, 0, 0.58, 1.0)

  • ease-in-out

由慢到快再到慢。等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)

  • step-start

等同于 steps(1, start)

  • step-end

等同于 steps(1, end)

  • steps(<integer>[, [ start | end ] ]?)

接受两个参数的步进函数。第一个参数必须为正整数,指定函数的步数。第二个参数取值可以是start或end,指定每一步的值发生变化的时间点。第二个参数是可选的,默认值为end。

  • cubic-bezier(<number>, <number>, <number>, <number>)

特定的贝塞尔曲线类型,4个数值需在[0, 1]区间内

8、css3 动画animation (IE10+)

8.1 @keyframes

要创建css3动画,@keyframes是必不可少的,它用来指定一个css样式和动画将逐步从目前的样式更改为新的样式。

@keyframes mykeyfreames {
form: {},
to: {}
}

8.2 animation

动画是使元素从一种样式逐渐变化为另一种样式的效果。您可以改变任意多的样式任意多的次数。请用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。0% 是动画的开始,100% 是动画的完成。为了得到最佳的浏览器支持,您应该始终定义 0% 和 100% 选择器。

  • animation-name:

检索或设置对象所应用的动画名称

  • animation-duration:

检索或设置对象动画的持续时间

  • animation-timing-function:

检索或设置对象动画的过渡类型

  • animation-delay:

检索或设置对象动画延迟的时间,默认为0

  • animation-iteration-count:

检索或设置对象动画的循环次数,无限次 definite

  • animation-direction:

检索或设置对象动画在循环中是都反向运动,
取值:normal, reverse(反向播放), alternate(奇数次正向播放,偶数次反向播放), alternate-reverse(奇数次反向播放,偶数次正向播放)

  • animation-play-state:

检索或设置对象动画的状态,w3c考虑移除

9、结合transition,box-shadow,translate写一个iphone-switch

/* css */
/* 开关按钮背景 */
.iphone-switch {display: inline-block;width: 42px;height: 20px;border: 1px solid #aaa;border-radius: 10px;background-color: #eee;-webkit-box-shadow: inset 0 0 0 0 #ddd;box-shadow: inset 0 0 0 0 #ddd;-webkit-transition: all .2s ease-in;transition: all .2s ease-in;
}
/* 用伪元素:before做开关 */
.iphone-switch:before {content: "";display: block;width: 20px;height: 20px;border-radius: 10px;background-color: #fff;-webkit-transition: all .2s ease;transition: all .2s ease;
}.iphone-switch.checked {-webkit-box-shadow: inset 0 0 0 10px #4bed90; box-shadow: inset 0 0 0 10px #4bed90;
}.iphone-switch.checked:before {-webkit-transform: translate(22px, 0px);transform: translate(22px, 0px);
}
// js
$( ".iphone-switch" ).click( function() {$(this)[ $(this).hasClass( "checked" ) ? "removeClass" : "addClass" ]( "checked" );
} );

完~

css3简记,了解一下?相关推荐

  1. css3简记(2D3D动画)

    目录 1.1 页面装饰 1.2 过渡 1.3 搜索引擎优化 2.1 阿里巴巴矢量图标库 2.2 如果图标库没有项目所需要的图标 3.1 平面转换 3.2 渐变 3.3 空间转换 4.1 动画 4.2 ...

  2. 个人简记为css3,H5+css3春节贺卡之个人收获

    麻雀虽小,五脏俱全 虽然课程只是一个小小的移动端项目开发,但麻雀虽小,五脏俱全. 课程涉及到需求分析,切图,重构,优化等等知识! 一个好的项目,如果想要快速开发完成,知识储备肯定要充足! html,h ...

  3. HTML5与CSS3基础教程笔记

    1.一个网络注意包括以下三个部分 *文本内容(text content):在页面上让访问者了解页面内容的纯文字. *对其他文件的引用(references to other files):这些文件加载 ...

  4. HTML5+CSS3的学习(一)

    HTML5+CSS3的学习(一) 2018版李立超html+css基础 103集教程,哔哩哔哩链接:https://www.bilibili.com/video/BV1sW411T78k?spm_id ...

  5. HTML5与CSS3权威指南之CSS3学习记录

    title: HTML5与CSS3权威指南之CSS3学习记录 toc: true date: 2018-10-14 00:06:09 学习资料--<HTML5与CSS3权威指南>(第3版) ...

  6. html滑动逐渐覆盖效果,创意jQuery和CSS3滑动覆盖响应式幻灯片特效

    这是一款非常有创意的jQuery和CSS3滑动覆盖响应式幻灯片特效.该幻灯片特效采用响应式设计,在幻灯片切换时使用一个滑动块状区域来进行覆盖,显示新的幻灯片内容,整体效果非常不错. 使用方法 HTML ...

  7. css3之transition、transform、animation比较

    css3动画多少都有些了解,但是对于transition.transform.animation这几个属性一直是比较模糊的,所以啊,这里做一个总结,也希望大家都可以对此有一个更好地理解.    其实, ...

  8. 了解CSS/CSS3原生变量var (转)

    一.变量是个好东西 在任何语言中,变量的有一点作用都是一样的,那就是可以降低维护成本,附带还有更高性能,文件更高压缩率的好处. 随着CSS预编译工具Sass/Less/Stylus的关注和逐渐流行,C ...

  9. Notepad++支持jQuery、html5、css3

    Notepad++里的代码提示文件是以XML文件存放于目录 ....\Notepad++\plugins\APIs\下的. 将这三个文件:html.xml, css.xml, javascript.x ...

  10. 纯CSS3制作的圆角效果按钮菜单

    <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/h ...

最新文章

  1. MS CRM 2011 RC中的新特性(2)——销售自动化方面
  2. 题目:JavaWeb乐购资源管理系统(附源码链接免费下载)
  3. mybatis集成 Invalid bound statement (not found)
  4. vue 开发环境搭建
  5. 十三、CSS 3新特性详解(一)——属性、结构伪类、伪元素选择器,nth-child与nth-of-type区别,2D rotate,calc函数、滤镜filter、过渡transition
  6. SpringBoot报错:If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.
  7. 选择排序 介绍与java实现
  8. 最新android studio 第三方库包导入方法jar,so,module
  9. 3.4 小乌龟git使用说明
  10. Anylogic学习--------------智能体(可用于复杂装备系统建模)
  11. 一分钟详解智能快递柜电子锁结构
  12. 加强c语言,加强学法指导 提高C语言学习能力
  13. 把notepad++添加到右键打开方式(解决 打开方式 没有notepad++编辑器情况)
  14. 数学基础 - 线性空间(Vector Space)
  15. Y z推荐菜东家 易订货生鲜系统_易订货推出生鲜专版,为生鲜农贸客户提供解决方案...
  16. python训练营 朋友圈点赞收费吗_千万不要随便在朋友圈点赞!
  17. 2021年7月中国编程语言排行榜
  18. 【Arduino和高中通用技术】——十一、BF1K-3AA系列电阻式压力应变片、HX711压力传感器和另一种按键去抖动方法
  19. 基于人形检测的划区域客流统计
  20. 如何查询期刊的SCI分区

热门文章

  1. asp.net ashx导出excel到前台
  2. 加锁解锁PHP实现 -转载
  3. Unix操作系统内核结构报告
  4. 配置Spring.NET
  5. UIView用户事件响应
  6. Dynamic CRM 2013学习笔记(四)单据编号及插件批量注册工具
  7. JavaScript学习02 基础语法
  8. C# 类(11) 密封类.
  9. 产品特点概述-驰骋工作流
  10. 25个jQuery的编程小抄