选择器是指通过一定的语法规则选取到对应的HTML标记,然后给这个对应的HTML标记设置样式
1.标签选择器
写法:标签名{属性:值;属性:值}
标签选择器影响范围大,一般用来做一些通用设置,或用在层级选择器中。
举例:
 div{color:red}
 ......
 <div>这是第一个div</div>  <!--对应以上样式 -->
 <div>这是第二个div</div>  <!--对应以上样式 -->
2.类选择器
写法:类名{属性:值;属性:值}
通过类名来选择元素,一个类可应用于多个元素,一个元素上也可以使用多个类,应用灵活,可复用,是css中应用最多的一种选择器。
举例:
 .blue{color:blue}
 .big{font-size:20px}
 .box{width:100px;height:100px;background:gold}
 ......
 <div class="blue">....</div>
 <h3 class="blue big box">....</h3>
 <p class="blue box">....</p>
3.层级选择器(后代选择器)
写法:父选择器空格子选择器{属性:值}
主要应用在标签嵌套的结构中,层级选择器,是结合上面的两种选择器来写的选择器,它可与标签选择器结合使用,减少命名,同时也可以通过层级,限制样式的作用范围。
举例:
 .con{width:300px;height:80px;background:green}
 .con span{color:red}
 .con .pink{color:pink}
 .con .gold{color:gold}
 ......
 <div class="con">
     <span>....</span>
     <a href="#"class="pink">....</a>
     <a href="#"class="gold">...</a>
 </div>
 <span>....</span>
 <a href="#" class="pink">....</a>
| 选择器 | 书写格式 | 
| 标签选择器 | 标签名{属性:值} P{color:red} | 
| 类选择器 | .类名{属性,值} .title{color:red} | 
| 层级选择器 | .类名.子类名{属性:值} .title.subtitle{属性:值} | 
通用选择器:
- *{属性:值}
    *{
         color:red;
     }
子选择器
- E>F{属性:值};子元素选择器,匹配所有属于E元素的子元素F,
 1.子元素选择器: 只是子元素
 /*.box>p{
 color: red;
 }*/
相邻元素选择器
- E+F{属性:值}; 相邻元素选择器,匹配所有紧随E元素之后的元素(下面)
 /*相邻元素选择器
 1.相邻下面的元素,不是上面
 2.中间不能隔元素设置
 */
 .box div+p{
 color: red;
 }
属性选择器
- 属性选择器:标签[属性class] 针对所有是class属性的元素
- 标签[title=“123”],匹配所有title属性值是123的元素
- 标签[title^=“1”],匹配所有title属性值是以1开头元素
- 标签[title$=“1”],匹配所有title属性值是以1结尾元素
- 标签[title*=“1”],匹配所有title属性值是有1的元素
    /*1.只要有class属性*/
             /*div[class]{
color:red;
             }*/
/*2.class="12"*/
            /*div[class="12abs"]{
color:red;
             }*/
/*3.以class^="12",以12开头的值*/
             /*div[class^="12"]{
color:red;
             }*/
/*4.以class$="12",以12结尾的值*/
             /*div[class$="12"]{
color:red;
             }*/
/*5.以class*="a",凡是有a的值*/
             div[class*="a"]{
color:red;
             }
其他选择器1
- 1、E:nth-child(n):匹配元素类型为E且是父元素的第n个子元素
- 2、E:first-child:匹配元素类型为E且是父元素的第一个子元素
- 3、E:last-child:匹配元素类型为E且是父元素的最后一个子元素
   /*1.第几个子元素;  标签类型和序号必须全部一致*/
             /*.box div:nth-child(1){
color:red;
             }*/
             /*倒着数
            .box div:nth-last-child(2){
color:red;
             }*/
/*最后一个*/
            /*.box div:last-child{
color:red;
             }*/
/*第一个  标签类型和序号必须全部一致*/
            .box div:first-child{
color:red;
             }
其他选择器2
- 1.E:nth-of-type(n) 第几个E类型元素
- 2.E:first-of-type 第一个
- E:last-of-type 最后一个
 /*子元素中 第一个div标签*/
 .box div:nth-of-type(3){
 color: gold;
 }
 .box div:first-of-type{
 color: red;
 }
 .box div:last-of-type{
 color: green;
 }