相信各位如我一样的“抠图崽”和前端大佬们,在写网页样式的实话,总是免不了写下各种各样的选择器,再给选择的元素写入样式。最基本的元素选择器、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. bzoj2119 [ZJOI2010]base基站选址

    传送门 n年前的考试题,今天才填上…… 听说你们会决策单调性+主席树?然而我多年不写决策单调性,懒得写了……于是就写了一发线段树. 其实线段树应该不难想,毕竟转移是分层转移,并且这个题的转移函数可以快 ...

  2. mongoDB BI 分析利器 - PostgreSQL FDW (MongoDB Connector for BI)

    背景 mongoDB是近几年迅速崛起的一种文档型数据库,广泛应用于对事务无要求,但是要求较好的开发灵活性,扩展弹性的领域,. 随着企业对数据挖掘需求的增加,用户可能会对存储在mongo中的数据有挖掘需 ...

  3. python numpy+mkl+scipy win64 安装

    用pip在windows下安装numpy,scipy等库时一般来说都不会很顺利比较好的方式是自己下载对应的whl文件pip install 话不多说上链接 http://www.lfd.uci.edu ...

  4. c++实现对输入数组进行快速排序

    #include "stdafx.h" #include <iostream> #include <string> #include <vector& ...

  5. react-native-mapbox-gl

    mapbox是基于谷歌地图集成的地图插件,可以在很多平台使用,具体可以看mapbox官网.这里具体讲解“react-native-mapbox-gl”插件,是mapbox结合react native封 ...

  6. SQL Server ->> FileTable

    FileTable是SQL Server 2012的新特性之一.它是基于SQL Server 2008的FILESTREAM特性上而来的,允许我们把Windows文件存储在SQL Server中,让S ...

  7. dctcp-2.6.26-rev1.1.0.patch

    dctcp-2.6.26-rev1.1.0.patch diff -Naur linux-/include/linux/sysctl.h linux--dctcp-rev1.1.0/include/l ...

  8. angular2 遗留问题

    1.angular build [2017-07-26]  a.改写js/css的引用目录的前缀(比如统一增加 /abc/xxx/*.js)  b.build时,可以控制index/js/css的生成 ...

  9. Linux入门-1 常用命令

    写在前面 当年初学Linux的时候,在网上找到nash_su大神的一套视频,讲的特别好,基础部分看了好几遍,很多知识点让我受益至今. 十分庆幸当年的选择,也十分感谢nash_su大神,祝你事事顺心,每 ...

  10. Oracle sql trace用法

    sql_trace是oracle提供的一个非常好的跟踪工具,主要用来检查数据库的异常情况,通过跟踪数据库的活动,找到有问题的语句. 一.概述:    SQL_TRACE是Oracle的一个非常强大的工 ...