设为首页 加入收藏

TOP

CSS3中的选择器(一)
2019-09-03 03:32:05 】 浏览:28
Tags:CSS3 选择

这里总结一共有11种选择器,分别为:

通配符选择器、类选择器、id选择器、元素选择器(又叫标签选择器)、属性选择器、

伪类选择器、伪元素选择器、后代选择器(又叫包含选择器)、子元素选择器、兄弟选择器(相邻兄弟选择器+、通用兄弟选择器~)、群组选择器(几个共用一个,用逗号隔开)

(优先级:!important>行间样式>id>class=属性=伪类选择器>元素=伪元素选择器>通配符)

1、通配符选择器

语法:* {属性名:属性值;属性名:属性值; ........}  为页面上的所有元素设置样式,优先级最低

*{
  margin:0;
  padding:0;  
}

2、类选择器

语法:.类名{属性名:属性值;属性名:属性值; .......}  为含有相同类名的元素设置样式

<style>
   .s1{
      color:red;  
    } 
</style>
<body>
<p class='s1'>aa</p>
<p class='s2'>bb</p>
<p class='s1 s2'>cc</p>
<!----aa和cc的字体颜色为红色----> </body>

3、id选择器

语法:#id名{属性名:属性值;属性名:属性值; .......}   为id属性值为指定id名的元素设置样式

<style>
   #d1{
      color:red;  
    } 
</style>
<body>
<p id='d1'>aa</p>
<p id='d2'>bb</p>
<!----aa的字体颜色为红色---->
</body>

注意:在一个html文档中,一个id名只能使用一次;且不能使用id词列表

<p id='d1'>aa</p>
<p id='d1'>bb</p>  <!----错误,一个id名只能使用一次---->
<p id='d2 d3'>cc</p> <!-----错误,不能使用id列表-------->

4、元素选择器

又叫标签选择器,根据元素名(标签名)来设置样式

语法:元素名{属性名:属性值;属性名:属性值; .......}  为所有指定的元素设置样式

<style>
   p{            
      color:red;  
    } 
</style>
<body>
    <p>aa</p>
    <div>
        <p>bb</p>
    </div>
    <p >cc</p>
<!----aa、bb和cc的字体颜色均为红色---->
</body>    

5、属性选择器

 具体分为三种:

①简单属性选择器:选择具有某个属性名的元素

语法:[元素属性名]{属性名:属性值;属性名:属性值; .......}   选择有指定属性名的元素,而不管元素的该属性的属性值是什么

<style>
   [href]{
      color:red;  
    } 
</style>
<body>
    <a href='taobao'>taobao</a>
    <div>
        <a href='baidu'>baidu</a>
    </div>
    <a href='tencent' >tencent</p>
<!----taobao baiidu和tencent的字体颜色均为红色---->
</body>    

②具体属性值选择器:选择具有指定属性键值对(属性名和属性值都要匹配)的元素

语法:[元素属性="属性值"]{属性名:属性值;属性名:属性值; .......}  属性名和属性值要完全匹配

<style>
   [href='taobao']{
      color:red;  
    } 
</style>
<body>
    <a href='taobao'>taobao</a>
    <div>
        <a href='baidu'>baidu</a>
    </div>
    <a href='tencent' >tencent</p>
<!----taobao的字体颜色均为红色---->
</body>   

③子串匹配属性选择器:可以规定属性值包含什么字符串(*)或以什么字符串开头(^)/结尾($)

语法:[元素属性^="def"]{属性名:属性值;属性名:属性值; .......} 相应的属性值以def开头的元素

   [元素属性$="def"]{属性名:属性值;属性名:属性值; .......} 相应的属性值以def结尾的元素

   [元素属性*="def"]{属性名:属性值;属性名:属性值; .......} 相应的属性值包含def的元素

<style>
   [href^='t']{
      color:red;  
    } 
    [href$='u']{
        color:yellow;
    }
    [href*='b']{
        font-size:30px;
    }
</style>
<body>
    <a href='taobao'>taobao</a>
    <div>
        <a href='baidu'>baidu</a>
    </div>
    <a href='tencent' >tencent</p>
<!----taobao和tencent的字体颜色为红色;baidu的字体颜色为黄色;taobao和baidu的字体大小为30px---->
</body>       

6、后代选择器(又叫包含选择器)

语法:祖先元素 后代元素 {属性名:属性值;属性名:属性值; .......}  为具有指定祖先元素的所有后代元素设置样式 ,这两个元素之间的层次间隔可以是无限的 

<style>
  .s1 p{
      color:red;  
    } 
</style>
<body>
    <p>aa</p>
    <div class='s1'>
        <p&
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇不同场景下使用CSS隐藏元素 下一篇Less 的用法

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目