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

    PHP提供了专门的获取当前时间戳的函数,那就是time()函数.   time()函数获取当前的UNIX时间戳,返回值为从时间戳纪元(格林威治时间1970年1月1日 00:00:00)到当前的秒数.  ...

  2. centos7编译安装git最新版

    假如系统已经安装了git,先删除. 如果是通过yum安装的,直接在终端使用以下指令删除: yum remove git 如果是通过源码编译安装的,参考以下文章: Linux ./configure & ...

  3. css手风琴

    <style> .box{ width: 1000px; height: 450px; margin:0 auto; overflow: hidden;} .box div{ width: ...

  4. 【转】Javascript异步编程之setTimeout与setInterval

    Javascript异步编程之setTimeout与setInterval 转自:http://www.tuicool.com/articles/Ebueua 在谈到异步编程时,本人最主要会从以下三个 ...

  5. openlayers跨域设置后出现http status 500错误

    最近需要弄一下地理信息系统,用到openlayers和geoserver.在解决跨域的时候出现如下问题.求解决方案啊. 问题如下: 附:已经安装了python27,环境变量path中也添加了:c:\P ...

  6. 简单的自动升级提示AutoUpdater

    看过网上“圣殿骑士”和其他人的升级做法,感觉不太适合几十M的小型软件. 之前用的一直都是clickonce,但是3年下来感觉弊端太多,比如安装不能选择文件夹.打包不全.版本等问题,于是决定另辟捷径. ...

  7. 22_CopyOnWrite容器

    [简述] Copy-On-Write简称COW,是一种程序设计中的优化策略. JDK里的COW容器分为两种:CopyOnWriteArrayList 和 CopyOnWriteArraySet. Co ...

  8. shell 脚本中后台执行命令 &

    最近遇到一个问题, 执行脚本,脚本调用 一个命令,命令(deamon)是一个守护进程,为了调试,取消了守护进程模式.导致命令后边的其他命令(echo "456")都无法执行. de ...

  9. centos无法用password登录,只能用public key的解决办法

    如上图只能用public key登录,只是我在17年申请的阿里云免费体验半年的服务器上遇到的, 那么我们用阿里云后台的远程连接按钮进入服务器,进入后 就看/etc/ssh/sshd_config文件配 ...

  10. 查看Oracle表中的指定记录在数据文件中的位置

    查看Oracle表中的指定记录位置select rowid,user_id from sshr.xx_user where user_id=3010586 select rowid,       db ...