热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

css高级选择器有哪些

css高级选择器有:1、后代选择器,定义的时候用空格隔开,语法“EF{}”;2、交集选择器,用“.”隔开,语法“E.F{}”;3、并集选择器,用逗号隔开,语法“E,F{}”;4、伪类选择器;5、下一个兄弟选择器;6、属性选择器。

css高级选择器有:1、后代选择器,定义的时候用空格隔开,语法“E F{}”;2、交集选择器,用“.”隔开,语法“E.F{}”;3、并集选择器,用逗号隔开,语法“E,F{}”;4、伪类选择器;5、下一个兄弟选择器;6、属性选择器。

1、后代选择器: 定义的时候用空格隔开

对于E F这种格式,表示所有属于E元素后代的F元素,有这个样式。空格就表示后代。

后代选择器,就是一种平衡:共性、特性的平衡。当要把某一个部分的所有的什么,进行样式改变,就要想到后代选择器。

后代选择器,描述的是祖先结构。

看定义可能有点难理解,我们来看例子吧。

举例1:

  

空格就表示后代。.p1 p 表示.p1的后代所有的p

这里强调一下:这两个标签不一定是连续紧挨着的,只要保持一个后代的关联即可。也就是说,选择的是后代,不一定是儿子。

举例:

 

上方代码的意思是说:定义了

标签中的标签中的标签的样式。
同理:h3和b和i标签不一定是连续紧挨着的,只要保持一个后代的关联即可。

效果:

我们在开头说了:后代选择器,描述的是一种祖先结构。我们举个例子来说明这句话:



    
    
    


    

我是什么颜色?

上面css中的p p p,也能使文字的颜色变红。通过浏览器的审查元素,我们可以看到 p元素的祖先列表:

选择的元素要求同时满足两个条件:必须是h3标签,然后必须是special标签。

只能在h3标签中使用它:

css

注意,交集选择器没有空格。所以,没有空格的p.red(交集选择器)和有空格的p .red(后代选择器)不是一个意思。

交集选择器可以连续交:(一般不要这么写)

h3.special.zhongyao{
    color:red;
}

上面这种写法,是 IE7 开始兼容的,IE6 不兼容。

交集选择器,我们一般都是以标签名开头,比如p.haha 比如p.special

3、并集选择器:定义的时候用逗号隔开

三种基本选择器都可以放进来。

举例:

p,h1,#mytitle,.one/*定义了一个并集选择器,带有p,h1,id="mytitle",class="one"的标签都内容会显示红色*/{
    color:red;
}

答:

a{}a:link{}的区别:

  • a{}定义的样式针对所有的超链接(包括锚点)
  • a:link{}定义的样式针对所有写了href属性的超链接(不包括锚点)

(2)动态伪类:

用于以下几种状态(适用于所有的标签):

  • focus(聚焦,点击某个文本框后输入文字,可以定义文本框和文字的属性):是某个标签获得焦点的时候(比如某个输入框获得焦点)
  • hover(盘旋,鼠标停留在上面):鼠标放到某个标签上的时候
  • active(长按状态):点击某个标签没有松鼠标时

举个例子:






利用这个hover属性,我们同样对表格做一个样式的设置:

表格举例:


 
  
  
  
  
  
  
  
 
 
 
  

效果如下:

另外,介绍一下子代选择器:用符号>表示

IE7开始兼容,IE6不兼容:

div>p{
	color:red;
}

p的儿子p。和p的后代p的截然不同。

能够选择:

我是div的儿子

不能选择:

  • 我是div的重孙子

(3)序选择器

IE8开始兼容;IE6、7都不兼容

设置无序列表

    中的第一个
  • 为红色:

    设置无序列表

      中的最后一个
    • 为红色:

      ul li:last-child{
      			color:blue;
      }

      序选择器还有更复杂的用法。

      由于浏览器的更新需要过程,所以现在如果公司还要求兼容IE6、7,那么就要自己写类名:

      • 项目
      • 项目
      • 项目
      • 项目
      • 项目
      • 项目
      • 项目
      • 项目
      • 项目
      • 项目

      用类选择器来选择第一个或者最后一个:

      ul li.first{
      	color:red;
      }
      ul li.last{
      	color:blue;
      }

      5、下一个兄弟选择器

      IE7开始兼容,IE6不兼容。

      +表示选择下一个兄弟

      上方的选择器意思是:选择的是h3元素后面紧挨着的第一个兄弟。

        

      我是一个标题

      我是一个段落

      我是一个段落

      我是一个段落

      我是一个标题

      我是一个段落

      我是一个段落

      我是一个段落

      我是一个标题

      我是一个段落

      我是一个段落

      我是一个段落

      我是一个标题

      效果如下:

    学习视频分享:css视频教程

    以上就是css高级选择器有哪些的详细内容,更多请关注其它相关文章!


推荐阅读
  • 蒜头君的倒水问题(矩阵快速幂优化)
    蒜头君将两杯热水分别倒入两个杯子中,每杯水的初始量分别为a毫升和b毫升。为了使水冷却,蒜头君采用了一种特殊的方式,即每次将第一杯中的x%的水倒入第二杯,同时将第二杯中的y%的水倒入第一杯。这种操作会重复进行k次,最终求出两杯水中各自的水量。 ... [详细]
  • 经过一年的思考,我发现自己对开发的兴趣并不浓厚,而对算法研究则更加热衷。本文将探讨开发与算法之间的本质差异,并分享我的未来学习计划。 ... [详细]
  • CSS 百分比单位的取值依据是什么
    本文详细探讨了 CSS 中百分比单位的取值依据,包括不同定位方式下的包含块概念及其应用。通过具体的示例和代码,帮助读者更好地理解和掌握这一知识点。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • 本文介绍了Java编程语言的基础知识,包括其历史背景、主要特性以及如何安装和配置JDK。此外,还详细讲解了如何编写和运行第一个Java程序,并简要介绍了Eclipse集成开发环境的安装和使用。 ... [详细]
  • Bootstrap 缩略图展示示例
    本文将展示如何使用 Bootstrap 实现缩略图效果,并提供详细的代码示例。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • 本文详细介绍了如何使用JavaScript实现面部交换功能,包括基本原理和具体实现步骤。 ... [详细]
  • 本文介绍了一种支付平台异步风控系统的架构模型,旨在为开发类似系统的工程师提供参考。 ... [详细]
  • 使用 Git Rebase -i 合并多个提交
    在开发过程中,频繁的小改动往往会生成多个提交记录。为了保持代码仓库的整洁,我们可以使用 git rebase -i 命令将多个提交合并成一个。 ... [详细]
  • NX二次开发:UFUN点收集器UF_UI_select_point_collection详解
    本文介绍了如何在NX中使用UFUN库进行点收集器的二次开发,包括必要的头文件包含、初始化和选择点集合的具体实现。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 网络爬虫的规范与限制
    本文探讨了网络爬虫引发的问题及其解决方案,重点介绍了Robots协议的作用和使用方法,旨在为网络爬虫的合理使用提供指导。 ... [详细]
  • 本文介绍了 AngularJS 中的 $compile 服务及其用法,通过示例代码展示了如何使用 $compile 动态编译和链接 HTML 元素。 ... [详细]
  • [c++基础]STL
    cppfig15_10.cppincludeincludeusingnamespacestd;templatevoidprintVector(constvector&integer ... [详细]
author-avatar
凰千寻_847
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有