【CSS3新增加的(CSS属性选择器 + 结构伪类选择器 + 伪类选择器 + 浏览器前缀 + 新增加的属性)】

CSS属性选择器

1/ E[attr] 希望选择有某个属性的元素,而不论属性值是什么 例如:a[href]{color:red;}

2/ E[attr=”value”] 除了选择拥有某些属性的元素,还可以进一步缩小选择范围,只选择有特定属性值的元素 例如: a[href=”www.baidu.com”]{color:red;}

3/ E[attr^=”value”]

指定了属性,并且指定了属性值,属性值是以value开头的 例如:a[title^=“text”] {color: red;}

4/

  E[attr$=”value”]

指定了属性,并且指定了属性值,属性值是以value结尾的 例如:a[title$=“text”] {color: red;}

想要用css的属性选择器,必须html先有属性,才能用 用该属性选择器的标签有 a input img等.

css结构伪类选择器

1/ E:fisrt-child
作为父元素的第一个子元素的元素E。与E:nth-child(1)等同

2/ E:last-child
作为父元素的最后一个子元素的元素E。与E:nth-last-child(1)等同

3/ E F:nth-child(n) even是偶数 odd是奇数(2n+1是odd效果,都是奇数变)
选择父元素E的第n个子元素F。:nth-child(length)、:nth-child(n)、:nth-child(nlength)、:nth-child(n+length)、:nth-child(-n+length)、:nth-child(nlength+1)

ul li:nth-child(3)
意思是指定ul下的第三个子元素是li的时候变换样式.
这里的n是指从0开始的数列(可以是n 2n 3n等)
-2n+10可以写,但是结果不能为负数

4/ :nth-last-child()
选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算;

5/ :only-child
选择的元素是它的父元素的唯一 一个子元素;

6/ :first-of-type
选择一个上级元素下的第一个同类子元素

7/ :last-of-type
选择一个上级元素的最后一个同类子元素

8/ :nth-of-type()
选择指定的元素,类似于:nth-child,不同的是他只计算选择器中指定的那个元素。

9/ :nth-last-of-type()
选择指定的元素,从元素的最后一个开始计算

10/ :only-of-type
选择一个元素是它的上级元素的唯一 一个相同类型的子元素

11/ :empty
选择的元素里面没有任何内容

12/ :root
选择文档的根元素

css伪类选择器

1/ UI状态伪类选择器
input:enabled{ 可用状态下的样式}
input:disabled{ 禁用状态下的样式}
input:checked{ 选中状态下的样式}

2/ 否定伪类选择器
:not() 除了什么什么 可以让你定位不匹配该选择器的元素

3/ 目标伪类选择器
:target 选择器可用于选取当前活动的目标元素。
使用该选择器来对页面中的某个target元素(该元素的id当做页面中的超链接来使用)指定样式,该样式只在用户点击了页面中的超链接,并且跳转到target元素后起作用。

:target主要修饰的是锚点里面的id所在对象的样式,默认的时候看不到,当点击调转页面过去后才有样式

css浏览器前缀

1/ -ms- -ms-box-shadow
IE浏览器专属的CSS属性需添加-ms-前缀

2/ -moz- -moz-box-shadow
所有基于Gecko引擎的浏览器(如Firefox)专属的CSS属性需添加
-moz-前缀

3/ -o- -o-box-shadow Opera浏览器专属的CSS属性需添加-o-前缀

4/ -webkit- -webkit-box-shadow 所有基于Webkit引擎的浏览器(如Chrome、Safari)专属的CSS需添加-webkit-前缀

浏览器内核:
IE内核或者MSHTML或者trident
代表浏览器是IE, 不开源,只能Windows系统用

Gecko
代表:火狐 开源的,可以跨平台使用

webkit
代表浏览器苹果浏览器,早期谷歌

presto
代表浏览器是欧明浏览器

Blink
最新的谷歌和欧明浏览器

css3优雅降级渐进增强

.transition { /渐进增强写法 从小到大/
-webkit-transition: all .5s;
-moz-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
} 越来越好的叫渐进增强

.transition { /优雅降级写法 从大到小/
transition: all .5s;
-o-transition: all .5s;
-moz-transition: all .5s;
-webkit-transition: all .5s;
} 逐渐兼顾小地方的叫优雅降级

css新增加的属性

1/ 文字阴影 text-shadow 文本阴影默认颜色时字体颜色
p{
text-shadow: 10px 10px 5px red;
}
p{
text-shadow: 10px 10px 5px red,2px -9px 5px yellow;
}
依次是 水平阴影距离,垂直阴影距离,(这两个可以给负值) 模糊度 阴影颜色
多个阴影之间用逗号隔开

2/ 盒子阴影 box-shadow 盒子阴影默认颜色黑色
p{
box-shadow: 10px 10px 5px 3px red inset;
}

        p{
            box-shadow: 10px 10px 5px red,2px -9px 5px  yellow;
          }

依次是 水平阴影距离,垂直阴影距离,(这两个可以给负值) 模糊度 延伸半径 阴影颜色 内阴影
多个阴影之间用逗号隔开

3/ CSS3的圆角
border-radius 设置圆角
border-radius :20px/30px; 如果反斜杠符号“/”存在,“/”前面的值是设置元素圆角的水平方向半径,“/”后面的值是设置元素圆角的垂直方向的半径;
border-radius :30px; 如果没有“/”,则元素圆角的水平和垂直方向的半径值相等

想要单独切一个圆角:border-top-left:100px; 左上 border-bottom-right:100px; 右下
加方向词的写法只能切正圆,切椭圆可以.
(加方向词的时候记得垂直的方向词在水平方向 词前面)

简写:

     border-radius:一个值; 四个角都切,一样的圆角
     border-radius:两个值; 四个角都切,左上和右下值一样,右上和左下值一样
     border-radius:三个值; 四个角都切,左上一个值 右上和左下一个值  右下一个值
     border-radius:四个值; 四个角都切,左上 右上 右下 左下
     border-radius:100px 60px/20px 80px;指左上和右下 水平半径100px 垂直半径20px   
 右上和左下 水平半径60px  垂直半径80px
 带着/ 切得是椭圆,/前的都是水平半径,/后的都是垂直半径

控制单词换行的属性:
4/ word-break
自己决定自动换行的处理方法
word-break:normal:使用浏览器默认的换行规则。
word-break:keep-all:不允许中文字断开。
word-break:break-all:允许在单词内换行,可以强行截断英文单词,达到词内换行效果。

5/ word-wrap
用来标明是否允许浏览器在单词内进行断句
word-wrap:normal 默认值。
word-wrap:break-word:在长单词或 URL 地址内部进行换行。将内容在边界内换行(不截断英文单词换行)。

CSS设置中英文大小写的属性:

1/ text-transform
控制文本的大小写
text-transform :capitalize;文本中的每个单词以大写字母开头。
text-transform :uppercase;定义仅有大写字母
text-transform :lowercase;定义无大写字母,仅有小写字母。
text-transform :none;默认值

2/ font-variant
设置文本的大小写
font-variant:normal;默认值
font-variant:small-caps;浏览器会显示小型大写字母的字体

CSS3渐变效果

  • linear-gradient(线性渐变)

    • 向下/向上/向左/向右/对角方向

      • 线性渐变 - 从上到下(默认情况下):
        #grad {
        background-image: -webkit-linear-gradient(red, blue);
        background-image: -o-linear-gradient(red, blue);
        background-image: -moz-linear-gradient(red, blue);
        background-image: linear-gradient(red, blue);
        }

      • 线性渐变 - 从左到右:
        #grad {
        background: -webkit-linear-gradient(left, red , blue);
        background: -o-linear-gradient(left, red, blue);
        background: -moz-linear-gradient(left, red, blue);
        带浏览器前缀的写法:写方向词的不用to
        background: linear-gradient(to right, red , blue);
        不带前缀的写法: 写方向词要加个to

      • 线性渐变 - 对角:
        指定水平和垂直的起始位置来制作一个对角渐变;
        从左上角开始(到右下角)的线性渐变:
        #grad {
        background: -webkit-linear-gradient(left top, red , blue);
        background: -o-linear-gradient(left top, red, blue);
        background: -moz-linear-gradient(left top, red, blue);
        background: linear-gradient(to bottom right, red , blue);

      • 控制渐变的范围: 在颜色后面写百分比
        background: linear-gradient(red 50%, blue 80%);
        0~50%是纯红色 50%~80%是红绿渐变 80%~100%是纯绿色

      • 平铺渐变或重复渐变(repeating):
        background: repeating-linear-gradient(red 50%, blue 80%);

    • 多个渐变一块用:
      background: repeating-linear-gradient(red 50%, blue 80%),repeating-linear-gradient(red 50%, blue 80%);
      中间用逗号隔开,先写的层次在上,后面的层次在下,一般先写的给透明度,要不然看不见后面的

    • 带有指定的角度的线性渐变(deg):
      #grad {
      background: -webkit-linear-gradient(180deg, red, blue);
      background: -o-linear-gradient(180deg, red, blue);
      background: -moz-linear-gradient(180deg, red, blue);
      background: linear-gradient(180deg, red, blue);
      }

  • 径向渐变
    指带有指定角度的线性渐变
    为了创建一个径向渐变,你也必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以指定渐变的中心、形状(原型或椭圆形)、大小。(圆形circle ,写在最前面 background: radial-gradient(circle, red, yellow, green)😉
    (默认情况下,渐变的中心是 center(表示在中心点),渐变的形状是 ellipse(表示椭圆形),渐变的大小是 farthest-corner(表示到最远的角落)。)

    • 径向渐变 - 颜色结点均匀分布(默认情况下)
      #grad {
      background: -webkit-radial-gradient(red, green, blue);
      background: -o-radial-gradient(red, green, blue);
      background: -moz-radial-gradient(red, green, blue);
      background: radial-gradient(at left, red, green, blue);
      }
      方向也可以用像素表示

    • 径向渐变 - 颜色结点不均匀分布
      #grad {
      background: -webkit-radial-gradient(red 5%, green 15%, blue 60%);
      background: -o-radial-gradient(red 5%, green 15%, blue 60%);
      background: -moz-radial-gradient(red 5%, green 15%, blue 60%);
      background: radial-gradient(red 5%, green 15%, blue 60%);
      }

  • CSS的重复渐变(repeating)

    重复的线性渐变 repeating-linear-gradient() 函数用于重复线性渐变:
    重复的径向渐变 repeating-radial-gradient()函数用于重复径向渐变:
    

CSS中背景相关的属性

background-size 背景图的大小

background-size:200px 100px;
或者
background-size:200% 100%;

background-size:cover;
把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中。
background-size:contain;
保持背景图像本身的宽高比例不变进行缩放。
多个背景图书写用逗号隔开,先写的背景图图层在上
background:url(in.jpg) no-repeat,url(in.jpg) no-repeat blue 0px 0px /200px 200px;
如果需要多个背景图又需要背景颜色,简写的时候,颜色只能放在最后引入的背景图里面就行

调用iconfont网站字体图标:

1\ 先定义字体:

    @font-face{font-family:"" ; src:url(引入相关字体文件);}

2\ 调用该字体:

  谁需要该字体就给谁调用

3\ 主要在iconfont.cn平台

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值