css3概念
css3是css技术的升级版本
由w3c从1999年制定,2001年完成
主要包括了很多模块,比如盒模型、列表模块、背景边框等。
css3区别于css最大的地方就是css3是一系列的模块,便于更新和发展。
渐进增强和优雅降级
渐进增强:1.针对低版本浏览器进行页面设计和基本功能的完善。
2.再针对高级浏览器进行交互、效果、功能的追加。
3.给用户提供更好的体验。
4.相当于向上兼容
优雅降级:1.一开始就构建功能完善的站点,并对站点进行修复和测试。
2.然后针对各大浏览器逐步进行hack即删除修改优化
3.相当于向上兼容
区别:1.优雅降级从复杂的效果开始试图减少用户体验的供给,渐进增强则是从一个很基础,能够其作用的版本开始,不断扩充以适应需求。降级意味着功能衰减,增强意味着处于安全地带能够正常使用。
新增1.css选择器
子代选择器:>
相邻兄弟选择器:+
兄弟选择器:~
属性选择器:
(1)选择某个元素[某属性名="某属性值"]{}(ps:某个具有该属性属性值的东西)
(2)选择某个元素[某属性名](ps:某个具有该属性的东西)
(3) 选择某个元素[属性名~="值 值 值”](ps:某个具有这个属性这三个值的东西)
(4) ^=以什开头
(5)$=以什么结束
(6)*=包含什么
(7)|=以什么开头
伪类选择器
结构伪类
(1)(el):first-child 匹配属于任意元素的第一个子元素的 el 元素(找父元素的第一个孩子)
(el):first-of-type选择父元素中的第一个 el 元素(找父元素的第一个某类元素,比如有多个p儿子那就找第一个p)
(el):last-child选择所有 el 元素的最后一个子元素
(el):last-of-type选择父元素中最后一个 el 元素
(2)(el):empty匹配没有子元素(包括文本节点)的 el 元素(找没有某个元素的父亲)
(3)(el):nth-child(n)选择所有 el 元素的父元素的第 n 个子元素(找父元素的某个孩子)
(el):nth-of-type(n)选择所有p元素第 n 个为 el 的子元素(找父元素某个孩子的第几个)
(el):nth-last-child(n)选择所有 el 元素倒数的第 n 个子元素(找父元素倒数第几个孩子)
(el):nth-last-of-type(n)选择所有p元素倒数的第 n 个为 el 的子元素(找父元素某类孩子倒数第几个)
odd奇数个
even偶数个
numN带有n的公式个
(el):only-child选择所有仅有一个子元素,并且子元素是 el 元素(选择有一个孩子并且必须是男孩的爹)
(el):only-of-type选择所有仅有一个子元素中为 el 的元素(选择仅有一个男孩,同时可以有别的类型的孩子的爹)
否定伪类
:not(el)选择所有 el 以外的元素
状态伪类
:focus选择元素输入后具有焦点
:enabled匹配每个已启用的元素
:disabled匹配每个被禁用的元素
:checked匹配每个已被选中的 元素
:required选择有"required"属性指定的元素属性
:optional选择没有"required"的元素属性
:read-only选择只读属性的元素属性
:read-write选择没有只读属性的元素属性
:valid选择所有有效值的属性
:invalid在表单元素中的值是非法时设置指定样式
:in-range用于标签的值在指定区间值时显示的样式
:out-of-range选择指定范围以外的值的元素属性
目标伪类
E:target,选择匹配E的所有元素,并且匹配元素被相关URL指向。在浏览器地址框,那个元素名。
新增2.css3中的背景
1.background-clip规定背景的绘制区域
content-box(从内容开始)
padding-box(从内边距开始)
border-box(从边框开始)
2.background-origin规定背景图片的定位区域
content-box(从内容开始)
padding-box(从内边距开始)
border-box(从边框开始)
3.background-size规定背景图片的尺寸 !!!
length第一个值设置宽度,第二个值设置的高度。如果只给出一个值,第二个是设置为 auto(自动)
percentage第一个值设置宽度,第二个值设置的高度。如果只给出一个值,第二个是设置为 auto(自动)
cover完全覆盖背景定位区域的最小尺寸
contain完全覆盖背景定位区域的最大尺寸
4.多背景
background:url(),url();
新增3.css3中的边框
border-radius
border-img
新增4.css3中阴影
box-shadow
text-shadow