符合中小企业对网站设计、功能常规化式的企业展示型网站建设
本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...
商城网站建设因基本功能的需求不同费用上面也有很大的差别...
手机微信网站开发、微信官网、微信商城网站...
实际应用,更多的使用italic属性值
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、微信小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了邕宁免费建站欢迎大家使用!
实际应用中, 行高的数值通过设计图获取, 量取数值时需要使用一些辅助软件工具
选中文字工具,属性选中:不消除锯齿
字体、 字号、 行高、 加粗、 斜体 都是font综合属性的单一属性。
font属性五个单一属性的值可以进行合写, 属性值可以有2到多个, 值之间用空格进行分隔。
font进行综合书写时, 必须有字号和字体参与, 而且必须字号在前, 字体在后, 不能颠倒顺序。
font属性经常对字体、 字号、 行高进行合写, 书写顺序必须是字号、 行高、 字体, 字号和行高之间必须用/进行分隔
如果font属性需要设置加粗和斜体, 两个属性值只能写在最前面, 两个值之间可以互换位置。 后面的字号、 行高、 字体不能更改位置
作用:设置文本整体是否有线条的装饰效果
作用:设置段落首行是否进行缩进
实际应用中,常用em
属性值区分正负, 正数表示向右缩进, 负数表示向左缩进
浏览器控制台中的盒模型图
作用: 设置可以添加元素内容的区域的宽度。
作用: 设置可以添加元素内容的区域的高度。
如果一个元素不添加 height 属性, 默认属性值为auto, 浏览器会自动计算出实际高度, 也就是是内部元素内容自动撑开的高度。 元素的高度自适应内部内容的高度。
书写四个方向单一属性时, 一般是按照顺时针规律书写: 上、 右、 下、 左
设置四个属性值, 分配方向上、 右、 下、 左。
设置三个值分配给上、 左右、 下。
设置两个值, 分配给上下、 左右 。
设置属性值只有一个, 四边的值相同。
作用: 设置边框的颜色。
属性值: 颜色名或颜色值, 整体类似 padding 综合属性写法。
每个单一属性都必须与复合属性 border 一致, 设置三个属性值。
书写四个方向单一属性时, 一般是按照顺时针规律书写: 上、 右、 下、 左
设置四个属性值, 分配方向上、 右、 下、 左。
设置三个值分配给上、 左右、 下。
设置两个值, 分配给上下、 左右 。
设置属性值只有一个, 四边的值相同。
给 body 标签设置整体文字样式, 让大部分后代标签全部去继承
设计图中盒子高度占位是固定的, 后面同级元素在高度下面加载。多余内容会溢出盒子。
设置了高度的盒子, 如果内部元素的加载高度超过父级, 会溢出。可以通过一个溢出的属性 overflow, 进行溢出部分内容的显示效果设置。
要求盒子高度必须自适应内部内容的高度。
或者设置height的属性值是自动的。
一个元素内部嵌套的子元素, 在父元素中居中。
针对类似 div 样式上必须独占一行的盒子, 如果子盒子宽度低于父盒子宽度, 可以设置子盒子的 margin 值, 水平方向的值都设置为 auto。
原因: auto 只在水平方向有作用, 水平方向的 margin 如果设置为 auto, 边距会自动无限增大, 直到撑满整个父元素除了子元素宽度之外剩余的区域, 如果两个水平方向都是 auto, 两边都要无限大, 只能达到一个平衡, 两边距离相同, 导致盒子居中。
一般情况下, 一个父元素内部可以放一个或多个子元素, 而且多个子元素要排成一行显示, 必须保证父元素的宽度一定要足够(不考虑溢出情况) , 需要遵循一个设置尺寸的规律: 所有子元素的宽度加在一起不能大于父元素的宽度 width。父元素的width ≥ 所有子元素width + padding + border + margin
如果不满足条件: 要么多余的子元素掉下来不能在一排, 要么溢出父元素
父子盒模型中, 只有一个子元素, 且子元素是类似 div 标签必须占一行的。不设置子元素的 width 属性, 子元素的 width 属性值会自动加载父级元素的 width。如果同时设置了子元素水平方向的 padding 和 border 、 margin, 不需要手动去进行内减, 子元素的 width 会自动收缩尺寸。
子元素所有的水平方向的位置所有属性的加和等于父元素的 width 。
在垂直方向如果有两个元素的外边距有相遇的, 浏览器中加载的真正的外边距不是两个间距的加和, 而是两个边距中值较大的, 边距值小的塌陷到了边距值大的值内部。
上面的元素有下边距, 下面的元素有上边距, 两个边距相遇, 真正的盒子间距离是较大的那个值
父子元素之间也会出现 margin 塌陷, 父元素和子元素都设置了同方向的margin-top 值, 两个属性之间没有其他的内容进行隔离, 导致两个属性相遇, 发生margin 塌陷。
本身父元素与上一个元素的距离是0, 子元素如果设置了垂直方向的上边距, 会带着父级一起掉下来。
水平方向的 margin 没有塌陷现象。
在标准流中, 大部分元素是区分等级的, 习惯将元素划分为几种常见的加载级别:块级元素、 行内元素、 行内块元素等。
大部分容器级标签包括p标签都是块级元素, 比如 div 、 h1 等。
大部分的文本级标签, 比如 span、 a、 b 等。
比如 img、 input 等。
可以通过 display 属性更改一个标签的显示模式。
属性值: 元素根据属性值不同, 可以加载对应元素等级的显示模式的特点。
display 属性更改的显示模式并没有改变标准流本质性质, 页面还是只能从上往下加载, 存在空白折叠现象等微观性质。 要想实现更多的界面布局效果需要脱离标准流的限制。
标签元素脱离标准流的方法包括: 浮动、 绝对定位、 固定定位。
margin 塌陷现象出现在标准流中的, 浮动元素已经脱离标准流, 不再具有 margin塌陷现象。
与前面压盖效果结构类似, 同级元素中前面的元素浮动, 后面的元素不浮动, 不浮动的元素内部还有一些文字, 浮动的蓝盒子会压盖住粉盒子的一部分, 但是文字内容不会被盖住, 粉盒子中的文字会让开蓝盒子位置, 围绕它进行加载。这种效果称为字围现象。
可以利用字围现象制作一些特殊的图文混排布局效果
给标准流的父元素强制给一个合适的高度
作用: 清除标签元素自身受到的前面的浮动元素的影响。
给标准流父元素添加 clear 属性, 父元素不受前面浮动影响, 不会再占有浮动让出的位置。
给内部有浮动子元素的父元素添加溢出隐藏 overflow: hidden; 属性, 可以解决浮动的所有问题。
父元素有了高度后, 可以管理住内部所有的浮动元素, 不会延伸到后面标签中影响贴边。
a 标签可以根据用户行为不同, 划分为四种状态, 通过a 标签的伪类可以将四种状态选中设置为不同的样式效果, 用户触发对应行为, 就可以加载对应的样式。
一般会将访问前和访问后状态设置为一样的效果, 保证了页面的统一性, 可以选择性的设置鼠标移上和鼠标点击状态。
更加常用的一种设置方式如下:
a 标签任何普通的选择器, 可以同时选中四种状态, 可以将四种状态设置为相同的样式, 属性可以设置所有的 a 默认显示样式的属性, 包括盒模型、 文字等。
a:hover 伪类选择器: 设置鼠标移上时不一样的样式属性。
属性值都是使用代表方向的单词进行书写。
使用像素值作为背景定位的属性值。
百分比表示法使用百分比数字作为属性值。
100%代表的数值:
background 属性可以将五个单一属性的值进行合写。
属性值: 可以有 1-5 个属性值, 值之间用空格进行分隔, 背景定位的两个属性值算作一个属性值, 不能被分开也不能颠倒顺序。 五个属性值之间可以互换位置。
在h1 标签是权重最高的标签, 一般会在内部书写最重要的内容, 比如 logo 图片、 最大的标题等。
另外 h1 内部的文字, 可以帮助提高 SEO 搜索排名。
在设置的是 logo 图片时, 如果使用插入图, 就不能书写搜索关键字。
如果想解决 SEO 问题, 可以将 HTML 结构中, 插入图换成搜索关键字, 然后使用 css 添加背景图给 a 标签或 h1 标签。
在一个盒子中有背景图部分, 而且有文字内容, 文字会让开背景图区域进行加载,
背景区域应该使用 padding 挤出位置。
四个方向的 padding 都可能用于添加背景图。
当用户访问一个网站时, 需要向服务器发送请求, 网页上的每张图像都要经过一次求才能展现给用户。
然而, 一个网页中往往会应用很多小的背景图像作为修饰, 当网页中的图像过多时,服务器就会频繁地接受和发送请求, 这将大大降低页面的加载速度。为了有效地减少服务器接受和发送请求的次数, 提高页面的加载速度, 出现了 CSS精灵技术(也称 CSS Sprites、 CSS 雪碧) 。
CSS 精灵是一种处理网页背景图像的方式。
它将一个页面涉及到的所有零星背景图像都集中到一张大图中去, 然后将大图应用于网页, 这样, 当用户访问该页面时, 只需向服务发送一次请求, 网页中的背景图像即可全部展示出来。
通常情况下, 这个由很多小的背景图像合成的大图被称为精灵图。
CSS3 支持背景半透明的写法, 颜色值增加了一种 rgba 模式。
rgba 模式 : 在 rgb 基础上增加了一个不透明度的设置, 不透明度 alpha 取值范围在0-1 之间, 0 表示完全透明, 1 表示完全不透明, 0.5 表示半透明。
书写方式: rgba(红色, 绿色, 蓝色, 不透明度)
注意: 背景半透明是指盒子背景半透明, 盒子里面的内容不受影响。
通过 background-size 设置背景图片的尺寸, 就像我们设置 img 的尺寸一样, 在移动 Web 开发中做屏幕适配应用非常广泛。
CSS3 中规定, 一个盒子上, 可以添加多个背景图片。
background-image 的属性值书写时, 以逗号分隔多背景的 URL路径地址。
注意: 背景加载时, 先写的背景压盖后写的背景图片。
属性名: position。
作用: 设置定位的元素, 它需要根据某个参考元素发生位置的偏移。
定位的元素要想发生位置的移动, 必须搭配偏移量属性进行设置。
水平方向: left、 right。
垂直方向: top、 bottom。
属性值: 常用 px 为单位的数值, 或者百分比。
子绝父相、 子绝父绝、 子绝父固
属性值: absolute, 绝对的意思。
参考元素: 参考的是距离最近的有定位的祖先元素, 如果祖先都没有定位, 参考body。必须搭配偏移量属性才会发生位置移动。
性质: 绝对定位的元素脱离标准流, 会让出标准流位置, 可以设置宽高, 也可以随时定义位置, 绝对定位的元素不设置宽高只能被内容撑开。
注意1: 绝对定位的参考元素是不固定的, 不同的参考元素以及不同的偏移量组合,会导致绝对定位元素的参考点不同, 具体位移效果不同。
注意2: 在绝对定位中, 由于参考点不同, left 正值不再等价于 right 的负值。
以 body 为参考元素时, 参考点的确定与偏移量方向有关
第一, 如果有 top 参与的定位, 参考点就是 body 页面的左上顶点和右上顶点。 自身的对比点是盒子的所有盒模型属性最外面的左上角或右上角。
第二, 如果有 bottom 参与的绝对定位, 参考点是 body 页面首屏的左下顶点或右下顶点。 对比点是盒子的所有盒模型属性最外面的左下角或右下角。
实际应用中, 如果以 body 为参考元素, 不同分辨率的浏览器中, 绝对定位的元素位置是不同的, 所以较少使用 body 作为参考元素。
祖先级为参考元素
如果祖先级中有定位的元素, 就不会去参考 body 。
参考元素: 参考的是祖先元素中有任意定位的, 在 HTML 结构中距离目标最近的祖先。
如果绝对定位的参考元素是某个祖先级, 参考点是盒子 border 以内的四个顶点, 组合方向决定了参考点。 绝对定位的元素只关心对比点和参考点之间的距离, 会忽视参考元素的 padding 区域。
所有的定位类型都可以实现压盖效果。
由于绝对定位的元素脱标, 不占标准流位置, 压盖效果更彻底, 实际工作中, 常见的是 绝对定位制作压盖。
定位的元素不区分定位类型, 都会去压盖标准流或浮动的元素。
如果都是定位的元素, 在 HTML 中 后写定位压盖先写的定位 。
更改定位的元素的压盖顺序, 设置一个 z-index 属性。
属性值: 数字。
一、html标签
pre.../pre文字格式化
div....../div列块容器
字体大小变化 font size=?想输入的字/font
字体颜色 font color="..."想输入的字/font
字体变粗 b想输入的字/b
字体变斜 i想输入的字/i
字体加下划线 u想输入的字/u
对正中央ㄉ语法 p align="center"内容/p
对正左边ㄉ语法 p align="left"内容/p
对正右边ㄉ语法 p align="right"内容 /p
字体删除线 s想输入的字/s
字体设置 font face="字体名称"想输入的字/font
打字机字体 tt想输入的字/tt
上标字 sup想输入的字/sup
下标字 sub想输入的字/sub
水平线 hr color="..."
换行输入 想输入的字br想输入的字
超链接 a href="想链接网址"链接地的名称/a
a href="mailto:填入email"要显示的字打这里/a网络邮寄标签
贴图 img src="图形的网址"
跑马灯(循环) marquee behavior=scroll想输入的字/marquee
外部文件导入格式标签
CSS外部导入格式:
link rel="stylesheet" type="text/css" href="/css.css" /
直接引用:
style type="text/css"
!--
id{...}
--
/style
javascript - 加载外部.js独立文件:
script type="text/javascript" src="/script.js"/script
二、CSS文字属性:
color : #999999; /*文字颜色*/
font-family : 宋体,sans-serif; /*文字字体*/
font-size : 9pt; /*文字大小*/
font-style:itelic; /*文字斜体*/
font-variant:small-caps; /*小字体*/
letter-spacing : 1pt; /*字间距离*/
line-height : 200%; /*设置行高*/
font-weight:bold; /*文字粗体*/
vertical-align:sub; /*下标字*/
vertical-align:super; /*上标字*/
text-decoration:line-through; /*加删除线*/
text-decoration:overline; /*加顶线*/
text-decoration:underline; /*加下划线*/
text-decoration:none; /*删除链接下划线*/
text-transform : capitalize; /*首字大写*/
text-transform : uppercase; /*英文大写*/
text-transform : lowercase; /*英文小写*/
text-align:right; /*文字右对齐*/
text-align:left; /*文字左对齐*/
text-align:center; /*文字居中对齐*/
text-align:justify; /*文字分散对齐*/
vertical-align属性
vertical-align:top; /*垂直向上对齐*/
vertical-align:bottom; /*垂直向下对齐*/
vertical-align:middle; /*垂直居中对齐*/
vertical-align:text-top; /*文字垂直向上对齐*/
vertical-align:text-bottom; /*文字垂直向下对齐*/
三、CSS符号属性:
list-style-type:none; /*不编号*/
list-style-type:decimal; /*阿拉伯数字*/
list-style-type:lower-roman; /*小写罗马数字*/
list-style-type:upper-roman; /*大写罗马数字*/
list-style-type:lower-alpha; /*小写英文字母*/
list-style-type:upper-alpha; /*大写英文字母*/
list-style-type:disc; /*实心圆形符号*/
list-style-type:circle; /*空心圆形符号*/
list-style-type:square; /*实心方形符号*/
list-style-image:url(/dot.gif); /*图片式符号*/
list-style-position:outside; /*凸排*/
list-style-position:inside; /*缩进*/
四、CSS背景样式:
background-color:#F5E2EC; /*背景颜色*/
background:transparent; /*透视背景*/
background-image : url(/image/bg.gif); /*背景图片*/
background-attachment : fixed; /*浮水印固定背景*/
background-repeat : repeat; /*重复排列-网页默认*/
background-repeat : no-repeat; /*不重复排列*/
background-repeat : repeat-x; /*在x轴重复排列*/
background-repeat : repeat-y; /*在y轴重复排列*/
指定背景位置
background-position : 90% 90%; /*背景图片x与y轴的位置*/
background-position : top; /*向上对齐*/
background-position : buttom; /*向下对齐*/
background-position : left; /*向左对齐*/
background-position : right; /*向右对齐*/
background-position : center; /*居中对齐*/
五、CSS连接属性:
a /*所有超链接*/
a:link /*超链接文字格式*/
a:visited /*浏览过的链接文字格式*/
a:active /*按下链接的格式*/
a:hover /*鼠标转到链接*/
鼠标光标样式:
链接手指 CURSOR: hand
十字体 cursor:crosshair
箭头朝下 cursor:s-resize
十字箭头 cursor:move
箭头朝右 cursor:move
加一问号 cursor:help
箭头朝左 cursor:w-resize
箭头朝上 cursor:n-resize
箭头朝右上 cursor:ne-resize
箭头朝左上 cursor:nw-resize
文字I型 cursor:text
箭头斜右下 cursor:se-resize
箭头斜左下 cursor:sw-resize
漏斗 cursor:wait
光标图案(IE6) p {cursor:url("光标文件名.cur"),text;}
六、CSS框线一览表:
border-top : 1px solid #6699cc; /*上框线*/
border-bottom : 1px solid #6699cc; /*下框线*/
border-left : 1px solid #6699cc; /*左框线*/
border-right : 1px solid #6699cc; /*右框线*/
以上是建议书写方式,但也可以使用常规的方式 如下:
border-top-color : #369 /*设置上框线top颜色*/
border-top-width :1px /*设置上框线top宽度*/
border-top-style : solid/*设置上框线top样式*/
其他框线样式
solid /*实线框*/
dotted /*虚线框*/
double /*双线框*/
groove /*立体内凸框*/
ridge /*立体浮雕框*/
inset /*凹框*/
outset /*凸框*/
七、CSS表单运用:
文字方块 input type="text" name="T1" size="15"
按钮 input type="submit" value="submit" name="B1"
复选框 input type="checkbox" name="C1"
选择钮 input type="radio" value="V1" checked name="R1"
多行文字方块 textarea rows="1" name="S1" cols="15"/textarea
下拉式菜单 select size="1" name="D1"option选项1/option
option选项2/option/select
八、CSS边界样式:
margin-top:10px; /*上边界*/
margin-right:10px; /*右边界值*/
margin-bottom:10px; /*下边界值*/
margin-left:10px; /*左边界值*/
九、CSS边框空白
padding-top:10px; /*上边框留空白*/
padding-right:10px; /*右边框留空白*/
padding-bottom:10px; /*下边框留空白*/
padding-left:10px; /*左边框留空白*/
基本语法
规则
选择符
任何HTML元素都可以是一个CSS1的选择符。选择符仅仅是指向特别样式的元素。例如, P { text-indent: 3em }
当中的选择符是P。
类选择符
单一个选择符能有不同的CLASS(类),因而允许同一元素有不同样式。例如,一个网页制作者也许希望视其语言而定,用不同的颜色显示代码 :
code.html { color: #191970 }
code.css { color: #4b0082 }
以上的例子建立了两个类,css和html,供HTML的CODE元素使用。CLASS属性是用于在HTML中以指明元素的类,例如,
P
例如,code.html.proprietary是无效的。/p
类的声明也可以无须相关的元素:
.note { font-size: small }
在这个例子,名为note的类可以被用于任何元素。
一个良好的习惯是在命名类的时候,根据它们的功能而不是根据它们的外观。上述例子中的note类也可以命名为small,但如果网页制作者决定改变这个类的样式,使得它不再是小字体的话,那么这个名字就变得毫无意义了。
ID 选择符
ID 选择符个别地定义每个元素的成分。这种选择符应该尽量少用,因为他具有一定的局限。一个ID选择符的指定要有指示符"#"在名字前面。例如,ID选择符可以指定如下:
#svp94O { text-indent: 3em }
这点可以参考HTML中的ID属性:
P ID=svp94O文本缩进3em
关联选择符
关联选择符只不过是一个用空格隔开的两个或更多的单一选择符组成的字符串。这些选择符可以指定一般属性,而且因为层叠顺序的规则,它们的优先权比单一的选择符大。例如, 以下的上下文选择符
P EM { background: yellow }
是P EM。这个值表示段落中的强调文本会是黄色背景;而标题的强调文本则不受影响。
声明
属性
一个属性被指定到选择符是为了使用它的样式。属性的例子包括颜色、边界和字体。
值
声明的值是一个属性接受的指定。例如,属性颜色能接受值red。
组合
为了减少样式表的重复声明,组合的选择符声明是允许的。例如,文档中所有的标题可以通过组合给出相同的声明:
H1, H2, H3, H4, H5, H6 {
color: red;
font-family: sans-serif }
继承
实际上,所有在选择符中嵌套的选择符都会继承外层选择符指定的属性值,除非另外更改。例如,一个BODY定义了的颜色值也会应用到段落的文本中。
有些情况是内部选择符不继承周围的选择符的值,但理论上这些都是特殊的。例如,上边界属性是不会继承的;直觉上,一个段落不会有同文档BODY一样的上边界值。
注解
样式表里面的注解使用C语言编程中一样的约定方法去指定。CSS1注解的例子如以下格式:
/* COMMENTS CANNOT BE NESTED */
伪类和伪元素
伪类和伪元素是特殊的类和元素,能自动地被支持CSS的浏览器所识别。伪类区别开不同种类的元素(例如,visited links(已访问的连接)和active links(可激活连接)描述了两个定位锚(anchors)的类型)。伪元素指元素的一部分,例如段落的第一个字母。
伪类或伪元素规则的形式如
选择符:伪类 { 属性: 值 }
或
选择符:伪元素 { 属性: 值 }
伪类和伪元素不应用HTML的CLASS属性来指定。一般的类可以与伪类和伪元素一起使用,如下:
选择符.类: 伪类 { 属性: 值 }
或
选择符.类: 伪元素 { 属性: 值 }
定位锚伪类
伪类可以指定A元素以不同的方式显示连接(links)、已访问连接(visited links)和可激活连接(active links)。定位锚元素可给出伪类link、visited或active。一个已访问连接可以定义为不同颜色的显示,甚至不同字体大小和风格。
一个有趣的效果是使当前(或“可激活”)连接以不同颜色、更大的字体显示。然后,当网页的已访问连接被重选时,又以不同颜色、更小字体显示。这个样式表的示例如下:
A:link { color: red }
A:active { color: blue; font-size: 125% }
A:visited { color: green; font-size: 85% }
首行伪元素
通常在报纸上的文章,例如Wall Street Journal中的,文本的首行都会以粗印体而且全部大写地展示。CSS1包括了这个功能,将其作为一个伪元素。首行伪元素可以用于任何块级元素(例如P、H1等等)。以下是一个首行伪元素的例子:
P:first-line {
font-variant: small-caps;
font-weight: bold }
首个字母伪元素
首个字母伪元素用于加大(drop caps)和其他效果。含有已指定值选择符的文本的首个字母会按照指定的值展示。一个首个字母伪元素可以用于任何块级元素。例如:
P:first-letter { font-size: 300%; float: left }
会比普通字体加大三倍。
过渡使用 trainsition 属性,让元素的样式变化,不再瞬间完成,而是可以设定时间,在时间段内逐渐完成。
对单独的div元素做分别做设置进行属性说明:
1、设置在3秒内完成颜色的变化
2、可以分别对不同的属性分开做时间长度的设定,记得用逗号隔开
3、延迟delay:想在某个属性开始执行样式变化后的多少秒,才让另一个属性开始进行样式的动态变化,就可以使用延迟。用法就是:
2s 1s width ,意思就是在高度开始发生变化后的1s后,width的宽度才开始展现变化,然后在2s内完成宽度从30px到60px的变化。
delay的真正意义在于,它指定了动画发生的顺序,使得多个不同的transition可以连在一起,形成复杂效果
3、变化的速度:默认不设定,就是逐渐放慢的,默认值是ease
还可以额外指定设置:
linear:匀速
ease-in:加速
ease-out:减速
上述的三个情况,可以综合写为:
对应的变化就是,div的宽度瞬间变化为60px,然后高度在宽度变化后的1s之后才开始发生变化,在3秒内逐渐加速完成。
重点:
兼容性:各大浏览器基本已经支持无前缀的transition,所以可以直接使用不加前缀;
transition的变化设置,是只对有明确数值设置变化的,对于none,block这类的文字描述无效;
有效性:transition是一次性的,无法重复,除非反复触发。
1、相比于过渡属性transition的设置,动画animation的实现支持更为复杂的动态样式效果。
对单独的div元素做分别做设置进行属性说明:
1、使用animation动画属性,最重要的就是配合有“关键帧”——@keyframes
样式设置如下:
这样的设置,就是将1s分为3帧,每帧显示不同的背景颜色,然后动画效果只显示1次。
注意动画执行完成之后,就恢复元素原来定义的样式设置,如果原来没有这个样式的定义,那也是动画执行完成后恢复没有的状态。
@keyframes的写法比较松泛:
0%等同于from,100%等同于to:
如上面的写法就等同于:
下面的关键帧的写法也是有效的:
当然,(1)也是有延迟效果的设置:设置延迟多少秒后执行动画
(2)每帧之间是平滑过渡的,当然也可以设置为分步过渡,这样就有卡顿的效果:
解释:该动画,在停留1秒后开始执行,执行3次,每次执行时间为2秒,在2秒时间执行完成rainbow定义的关键帧样式,然后分步执行,有卡顿效果。
2、动画持续:动画效果默认只播放一次,加入infinite关键字,可以让动画无限次播放
3、指定动画播放的次数,直接写数值:
4、如果想要让动画结束后,停留在结束状态的样式,而不是默认变为起始状态,就可以添加关键字:
animation-fill-mode属性:
none:默认值,回到动画没开始时的状态
forwards:让动画停留在结束状态
backwards:让动画回到第一帧的状态
4、如果想要将帧数的设置,反向执行,就可以使用animation-direction属性:
normal:动画循环播放时,每次都是从结束状态跳回到起始状态,再开始播放
reverse:动画执行,先从结束帧的样式执行跳回到起始帧的样式。例如:
所有的transform属性设置,都不会改变元素占据的位置,还是保留的
1、旋转rotate
通过rotate设置旋转角度,来旋转元素
以div元素为例:
···
body
div class="transform"/div
/body
···
2、位移translate
设置X轴、Y轴方向的位移值
设置X轴方向的位移值
设置Y轴方向的位移值
3、缩放scale
设置元素水平方向和垂直方向同时缩放
设置元素水平方向缩放
设置元素垂直方向缩放
只设置一个参数,设置元素水平方向和垂直方向,同一比例同时缩放
4、扭曲:skew,设置元素的平面XY轴的扭曲角度
设置元素X轴,Y轴的扭转角度
只设置一个参数,元素X轴,Y轴的扭转角度相同
设置元素X轴的扭转角度
设置元素Y轴的扭转角度