温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

css怎么分辨伪类和伪元素

发布时间:2022-03-10 15:13:08 来源:亿速云 阅读:140 作者:iii 栏目:web开发

今天小编给大家分享一下css怎么分辨伪类和伪元素的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

  一.伪类(用于向某些选择器添加特殊的效果)

  伪类存在的意义是为了通过选择器找到那些不存在与DOM树中的信息以及不能被常规CSS选择器获取到的信息。伪类由一个冒号:开头,冒号后面是伪类的名称和包含在圆括号中的可选参数。任何常规选择器可以再任何位置使用伪类。伪类语法不区别大小写。一些伪类的作用会互斥,另外一些伪类可以同时被同一个元素使用。并且,为了满足用户在操作DOM时产生的DOM结构改变,伪类也可以是动态的。

  伪类包含两种:状态伪类和结构性伪类。

  状态伪类是基于元素当前状态进行选择的。在与用户的交互过程中元素的状态是动态变化的,因此该元素会根据其状态呈现不同的样式。当元素处于某状态时会呈现该样式,而进入另一状态后,该样式也会失去。常见的状态伪类主要包括:

  :link应用于未被访问过的链接;

  :hover应用于鼠标悬停到的元素;

  :active应用于被激活的元素;

  :visited应用于被访问过的链接,与:link互斥。

  :focus应用于拥有键盘输入焦点的元素。

  结构性伪类是css3新增选择器,利用dom树进行元素过滤,通过文档结构的互相关系来匹配元素,能够减少class和id属性的定义,使文档结构更简洁。常见的包括:

  :first-child选择某个元素的第一个子元素;

  :last-child选择某个元素的最后一个子元素;

  :nth-child()选择某个元素的一个或多个特定的子元素;

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

  :nth-of-type()选择指定的元素;

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

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

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

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

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

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

  例:

  <!DOCTYPEhtml>

  <html>

  <head>

  <metacharset="UTF-8">

  <title>伪类</title>

  <style>

  .demo{

  width:200px;

  height:500px;

  margin:50pxauto;

  text-align:center;

  }

  .tab_content{

  height:50px;

  background:red;

  margin-bottom:10px;

  }

  #tab1:target,#tab2:target,#tab3:target{

  background:blue;

  line-height:50px;

  }

  </style>

  </head>

  <body>

  <divclass="demo">

  <ulclass="tabs">

  <li><ahref="#tab1">标签一</a></li>

  <li><ahref="#tab2">标签二</a></li>

  <li><ahref="#tab3">标签三</a></li>

  </ul>

  <divid="tab1"class="tab_content">tab1</div>

  <divid="tab2"class="tab_content">tab2</div>

  <divid="tab3"class="tab_content">tab3</div>

  </div>

  </body>

  </html>

以上就是“css怎么分辨伪类和伪元素”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css
AI