相信各位如我一样的“抠图崽”和前端大佬们,在写网页样式的实话,总是免不了写下各种各样的选择器,再给选择的元素写入样式。最基本的元素选择器、class选择器、ID选择器等就不再过多的说了,相信大家都熟的不能再熟了,本文就对一些伪类和属性选择器惊醒一些基本的介绍。

1、子元素选择器

div>P{

 text-align:center;

}

选择父元素为 <div> 元素的所有 <p> 元素(不包括孙子P元素)

 2、相邻兄弟选择器

 div+p{
text-align:center;
}

“选择紧接在 h1 元素后出现的段落,h1 和 p 元素拥有共同的父元素(必须有共同的父元素)

3、属性选择器

  • 【attribute】
 a[target]{
color:red;
}

选择带有target属性的a元素

  • attribute=value
 a[target="_blank"]{
color:red;
}

选取所有targht属性值为_blank的a元素

  • attribute~=value
 p[class~="red"] {
color: red;
}

选择 class 属性中包含 red 的p元素(只需要匹配其中一个值就可以)

子串匹配属性选择器

  • 【attribute^=value】
 img[src="head"]{
width:200px;
}

选择src属性值以“head”开头的img元素

  • 【attribute$=value】
 a[href$=".pdf"]{
color:red;
}

选择href属性值以“.pdf”结尾的a元素

  • 【attribute*=value】
 img[src*="abc"]{
height:300px;
}

选择src属性值中包含“abc”的img元素

 2、伪类选择器

2.1动态伪类

动态伪类,顾名思义,只有在网页发生交互时,才会发挥作用的伪类,主要包括两种,第一种就是我们常用的超链接中的锚点伪类,如“:link”等

 a:link {color:blue;}/*链接没有被访问时前景色为蓝色*/
a:visited{color:orange;}/*链接被访问过后前景色为橙色*/
a:hover{color:red;}/*鼠标悬浮在链接上时前景色为红色*/
a:active{color:green;}/*鼠标点中激活链接那一下前景色为绿色*/

对于这四个伪类,使用时要特别注意其顺序,必须准守Link--visited--hover--active,不然容易出现不可描述的错误。

另外一种动态伪类称之为用户伪类,其主要在用户发生某些行为后才会体现,如“:hover”,“:active”和“:focus”

  • :hover 用于用户将鼠标移到该元素上面时的效果
  • :active 用于用户点击元素那一下发生的效果(只发生在点的一下,鼠标松开后效果就不存在了)
  • :focus 常用于表单填写,当用户鼠标点击聚焦在某输入框时候的效果

 3、CSS3   :nth选择器各种子元素选择

  • :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选择的元素里面没有任何内容。

CSS 高级选择器的更多相关文章

  1. css高级选择器&盒模型

    css高级选择器&盒模型 1.组合选择器 群组选择器 /* 每个选择器为可以为三种基础选择器的任意一个,用逗号隔开,控制多个*/ div,.div,#div{ color:red } 后代(子 ...

  2. day40 css高级选择器

    一.高级选择器 高级选择器分为:后代选择器.子代选择器.并集选择器.交集选择器 后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子) .container p{ col ...

  3. web@css高级选择器(after,befor用法),基本css样式

    1.高阶选择器:子代后代,相邻通用兄弟,交集并集,属性,伪类,伪元素子代后代选择器 div>p{}  div p{}相邻通用兄弟 div+p{}  div~p{}理解:div同学的同桌p  di ...

  4. 【笔记】CSS高级选择器:nth-child()

    详解CSS中:nth-child的用法 前端的哥们想必都接触过css中一个神奇的玩意,可以轻松选取你想要的标签并给与修改添加样式,是不是很给力,它就是“:nth-child”. 下面我将用几个典型的实 ...

  5. css高级选择器

    并集选择器 p,h1{} 交集选择器 p.first{} 后代选择器:嵌套标签 h1 span{} 子元素选择器 h1>span{} 属性选择器 input[type="passwor ...

  6. css以及选择器基础

    CSS样式基础了解1.css基础语法CSS样式的出现是为了将内容和表现分离极大的提高了工作效率内联样式(在 HTML 元素内部)<p style="margin-left: 10px: ...

  7. Python-ccs高级选择器 盒模型

    css高级选择器与盒模型 脱离文档流 ,其中就是产生了BFC 1.组合选择器 - 群组选择器 /* 每个选择器位可以位三种基础选择器的任意一个, 用逗号隔开, 控制多个 */ div, #div, . ...

  8. CSS 高级语法 ---- 继承和选择器的分组

    1. 选择器的分组 —————————————————————————   可以对选择器进行分组,被分组的选择器享用共同的声明.   h1,h2,h3,h4,h5,h6 { color: green; ...

  9. 精通CSS高级Web标准解决方案(1-1选择器)

    设计代码的结构 使用有意义的标记 css可以控制页面的外观并将表现与内容分隔开. 在分配ID与类名时尽量保证有意义且与表现无关. div可以对块级元素进行分组,而span可以对行内元素进行分组或标识. ...

随机推荐

  1. 关于iframe中使用fixed定位的一些问题

    先来看看position: fixed:的定义:生成绝对定位的元素,相对于浏览器窗口进行定位: 但是在iframe中使用fixed定位,实际上是相对于iframe窗口进行定位,原因在于iframe类似 ...

  2. 如何在一台机器上运行2个Tomcat

    比如:有两个版本的tomcat,一个5.*,一个6.*,此时由于两个工程分别部署在两个 版本的tomcat下,需要同时启动两个tomcat,以下是方法: 1.特别要注意:不要设置CATALINA_HO ...

  3. 如何对MySQL数据库中的数据进行实时同步

  4. android 多渠道打包

    android 多渠道打包 原理 在manifest文件中,application标签内部设置不同的metadata标签即可,可以通过java api获取这个matedata内的值 友盟提供的多渠道打 ...

  5. IIFE

    一.IIFE IIFE:immediately-invoked function expression,即时调用函数表达式. 如果一个函数,在定义的时候,就想直接调用它,就是一个IIFE. 函数执行方 ...

  6. 如何编写自定义hive UDF函数

    Hive可以允许用户编写自己定义的函数UDF,来在查询中使用.Hive中有3种UDF: UDF:操作单个数据行,产生单个数据行: UDAF:操作多个数据行,产生一个数据行. UDTF:操作一个数据行, ...

  7. [acm 1001] c++ 大数加法 乘法 幂

    北大的ACM 1001 poj.org/problem?id=1001 代码纯手动编写 - - #include <iostream> #include <cstdio> #i ...

  8. Python unittest模块心得(一)

    关于unittest模块的一些心得,主要是看官网的例子,加上一点自己的理解,官网地址:https://docs.python.org/3.6/library/unittest.html 基础概念介绍: ...

  9. LeetCode-Largest Rectangle in Histogram O(n) 详析-ZZ

    http://www.cnblogs.com/felixfang/p/3676193.html Largest Rectangle in Histogram Given n non-negative ...

  10. mangodb驱动编译

    1.Installing the MongoDB C Driver (libmongoc) and BSON library (libbson) Building on Windows with Vi ...