CSS3学习手记(二) 伪类选择器

伪类选择器

  • 动态伪类
  • UI元素状态伪类
  • CSS3结构类
  • 否定选择器
  • 伪元素

动态伪类

这些伪类并不存在于HTM中,只有当用户和网站交互的时候才能体现出来

  • 锚点伪类 :link  :visited
  • 用户行为伪类 :hover :active :focus(获取鼠标焦点)

UI元素状态伪类(CSS3新增)

我们把:enabled,:disabled,:check伪类称为UI元素状态伪类 兼容IE9以上  check只兼容OPera

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
  input{width: 200px;height: 30px;border: 1px solid #f00;}
  /*不可编辑*/
  input:disabled{background: #abcdef;border: 1px solid green;}
  /*可编辑*/
  input:enabled{width: 200px;height: 30px;border: 1px solid yellowgreen;}
        </style>
    </head>
    <body>
 <input type="text" disabled="disabled">
 <input type="text">
 <input type="text">
 <input type="text">
    </body>
</html>

CSS3结构类(nth选择器)

选择方法

  • first-child  选择属于其父元素的首个子元素的每个Element元素,并为其设置样式  兼容IE8以上
  • last-child   指定属于父元素的最后一个子元素的Element元素样式  兼容IE8以上
  • nth-child(n)  匹配属于其父元素的第N个子元素,不论元素的类型 兼容IE9以上   (关于参数n  n是一个简单的表达式,取值从0开始,这里只能是n,不能使用其他字符 odd(奇数) even(偶数)
  • nth-last-child(n)  匹配属于其父元素的第N个子元素,不论元素的类型,从最后一个子元素开始计数  兼容IE9以上
  • nth-of-type(N)  选择器匹配属于父元素的特定类型的第N个子元素的每个元素  兼容IE9以上
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
div:nth-of-type(2){color: red}
        </style>
    </head>
    <body>
    <div>0-1</div>
    <section>
        <div>1-1</div>
        <div>2-1</div>
        <div>3-1</div>
    </section>
    <div>0-2</div>
    <div>0-3</div>
    <section>
        <div>2-1</div>
        <div>2-2</div>
        <div>2-3</div>
    </section>
    </body>
</html>

  • nth-last-of-type(N)   选择器匹配属于父元素的特定类型的第N个子元素的每个元素 从最后一个元素开始匹配  兼容IE9以上
  • first-of-type  选择器匹配属于其父元素特定类型的首个子元素的每个元素 兼容IE9以上
  • last-of-type  选择器匹配属于其父元素特定类型的最后一个子元素的每个元素 兼容IE9以上
  • only-child     选择器匹配属于其父元素唯一子元素的每个元素  兼容IE9以上
  • only-of-type  择器匹配属于父元素的特定类型的唯一子元素的每个元素  兼容IE9以上
  • empty  选择器匹配没有子元素(包括文本节点)的每个元素  兼容IE9
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
      div{height: 30px;width: 200px;background: #abcdef;margin-top: 10px;}
      div:empty{background: red}
        </style>
    </head>
    <body>
    <div></div>
    <div>second</div>
    <div>Third</div>
    </body>
</html>

否定选择器(not)

:not(Element/selector)选择器匹配非指定元素/选择器的每个元素

语法格式

父元素:not(子元素/子选择器)   兼容IE9

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
        *{margin: 0;padding: 0;border: none;}
        nav{width: 800px;margin: 0 auto}
        a{text-decoration: none;color: #333;font-size: 14px;width: 100px;height: 30px;float: left}
        nav > a{display: block;border-right: 1px solid red}
        </style>
    </head>
    <body>
    <nav>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
    </nav>
    </body>
</html>

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
        *{margin: 0;padding: 0;border: none;}
        nav{width: 800px;margin: 0 auto}
        a{text-decoration: none;color: #333;font-size: 14px;width: 100px;height: 30px;float: left}
        nav > a:not(:last-of-type){display: block;border-right: 1px solid red}
        </style>
    </head>
    <body>
    <nav>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
        <a href="#">我是导航</a>
    </nav>
    </body>
</html>

时间: 2024-10-08 15:25:25

CSS3学习手记(二) 伪类选择器的相关文章

CSS3新增加的伪类选择器

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>CSS3新增加的伪类选择器</title>    <style type="text/css">    /*root所有的元素*/        :root{            color: pink;      

如何使用CSS3中的结构伪类选择器和伪元素选择器

原文:如何使用CSS3中的结构伪类选择器和伪元素选择器 结构伪类选择器介绍# 结构伪类选择器是用来处理一些特殊的效果. 结构伪类选择器属性说明表 属性 描述 E:first-child 匹配E元素的第一个子元素. E:last-child 匹配E元素的最后一个子元素. E:nth-child(n) 匹配E元素的第n个子元素. E:nth-child(2n)或者E:nth-child(even) 匹配E元素的偶数子元素. E:nth-child(2n+1)或者E:nth-child(odd) 匹配

CSS3(各UI元素状态伪类选择器受浏览器的支持情况)

选择器 Firefox Safari Opera IE Chrome E:hover Y Y Y Y Y E:active Y Y Y N Y E:focus Y Y Y Y Y E:enabled Y Y Y N Y E:disabled Y Y Y N Y E:read-only Y Y Y N Y E:read-write Y Y Y N Y E:checked Y Y Y N Y E:selection Y Y Y N Y E:default Y N Y N N E:indetermin

css3 :enabled与:disabled伪类选择器

css :enabled和:disabled伪类选择器 在Web表单中,有些表单元素(如输入框.密码框.复选框等)有"可用"和"不可用"这2种状态.默认情况下,这些表单元素都处在可用状态. 在CSS3中,我们可以使用:enabled选择器和:disabled选择器来分别设置表单元素的可用与不可用这两种状态的CSS样式. 语法: :disabled { style properties } :enabled { style properties } 如:我们为&quo

css3 巧用结构性伪类选择器

最近在国外的一个网站上看到的一个关于结构性伪类选择器的用法,觉得十分实用,就自己尝试了一下,并把它给记录下来: 这是最基本的样式: 1 <style type="text/css"> 2 li{ 3 list-style-type: none; 4 float: left; 5 width: 60px; 6 height: 60px; 7 background-color: #979698; 8 margin-left: 10px; 9 text-align: center

css3系列选择器之伪类选择器

Pseudo-Classes Selectors(伪类选择器) E:not(s) E:root E:target E:first-child E:last-child E:only-child E:nth-child(n) E:nth-last-child(n)   这一行的选择器,都会考虑其他元素的的影响. E:first-of-type E:last-of-type E:only-of-type E:nth-of-type(n) E:nth-of-last-type(n)   这一行的选择器

css3基础 :target 目标伪类选择器 简单示例

礼悟:    公恒学思合行悟,尊师重道存感恩.叶见寻根三返一,江河湖海同一体.          虚怀若谷良心主,愿行无悔给最苦.读书锻炼养身心,诚劝且行且珍惜.              ide:visual studio 2017             browser:Chrome                     os:win7 学习链接: http://blog.csdn.net/atleks/article/details/38966691 代码 <!DOCTYPE html>

CSS3 新怎的伪类选择器

:first-of-type p:first-of-type 选择属于其父元素的首个 <p> 元素的每个 <p> 元素. :last-of-type p:last-of-type 选择属于其父元素的最后 <p> 元素的每个 <p> 元素.:only-of-type p:only-of-type 选择属于其父元素唯一的 <p> 元素的每个 <p> 元素.:only-child p:only-child 选择属于其父元素的唯一子元素的每个

CSS3 01. CSS3现状、属性选择器、伪类选择器、

CSS 3 现状 兼容性差,需添加私有前缀/移动端优于PC端/不断改进中/渐进增强原则/考虑用户群体/遵照产品的方案 : CSS3手册 需要阅读其--阅读及使用指引 []表示全部的可选项 || 或者 | 表示 多选一 ? 表示 0个或1个 * 表示 0个或多个 {}表示范围  {A}代表出现A次 ,{A,B}代表出现A次以上B次以下 ,B可以省略,{A,} 代表至少出现A次,无上限 # 出现1次以上,以逗号隔开,可以选择后面跟大括号的方式精确表示重复次数:<length>#{1,4}. !代表

css选择器2——伪类选择器

一.伪元素选择器 1. E:first-letter/E::first-letter(css3时代两个冒号) 设置元素内的第一个字符的样式. 例如: p::first-letter{font-size:50px;} 2. E:first-line/E::first-line 设置元素内的第一行的样式. 例如: p::first-line{color:green;} 3. E:before/E::before在每个E元素的内容之前插入内容.用来和content属性一起使用. 例如: a::befo