选择器 示例 描述
* * 匹配任何元素
element DIV 标签选择器,匹配所有使用DIV标签的元素
.class .tips class选择器,匹配所有class属性中包含info的元素  .a.b则匹配同时包含a和b的元素
#id #username id选择器,匹配id属性为username的元素
element,element DIV,SPAN 多元素选择器,选择所有DIV和SPAN全集,使用,分隔
element element DIV SPAN 后代元选择器,匹配所有的DIV的SPAN后代元素,中间使用空格分隔
elemen> telement DIV>SPAN 子元素选择器,匹配所有的DIV的SPAN子元素,中间使用> 分隔
elemen+ telement DIV+SPAN 毗邻元素选择器,匹配紧随DIV后面的同级SPAN元素(only one),不一定就是一个同一个div后面的一个
elemen~ telement DIV~SPAN 同级元素选择器,匹配所有DIV后面的同级SPAN元素,可以隔着其他元素
[attribute] [att] 所有包含att属性的元素
[attribute=vlaue]
DIV [att='val']
匹配所有att属性为val的DIV元素 
[attribute^=vlaue]
[attribute|=vlaue]
DIV[att^='val'] 匹配所有att属性以val开头的DIV元素 w3s使用的是|
[attribute$=vlaue] DIV[att$='val'] 匹配所有att属性以val结尾的DIV元素
[attribute*=vlaue]
[attribute~=vlaue]
DIV[att*='val'] 匹配所有att属性包含val的DIV元素
[attr1=vla1][attr2*=vla2]
DIV [att1='v1'][att2*='v2']
匹配所有att属性为v1,att2属性包含v2的DIV元素
 
 
[attr1=vla1],[attr2*=vla2] DIV [att1='v1'],[att2*='v2'] 同上  或关系
:link a:link 选择所有未被访问的链接  
:visited a:visited 选择所有已被访问的链接  
:active a:active 选择所有活动链接  
:hover a:hover 选择鼠标指针所在的链接  
:focus input:focus 选择获取焦点的input元素 
:first-child
p:first-child
选择所有符合如下规则的p元素,p必须是其父元素的第一个子元素
:last-child
p:last-child
选择所有符合如下规则的p元素,p必须是其父元素的最后一个子元素
:first-of-type
p:first-of-type
选择父元素的首个p子元素的集合,和first-child区别是前面可以有非p元素,不一定是父元素的第一个子元素
:last-of-type
p:last-of-type
选择父元素的首最后一个p子元素的集合,和last-child区别是后面可以有非p元素,不一定是父元素的最后一个子元素
:only-of-type
p:only-of-type
选择父元素的只有唯一个p子元素的集合
:nth-child(n)
p:nth-child(2)
选择属于其父元素的第二个子元素的每个 <p> 元素
:nth-last-child(n)
p:nth-last-child(2)
同上,从最后一个元素来计数
:nth-of-type(n)
p:nth-of-type(2)
选择父元素的第二个p子元素的集合,和:nth-child(n) 区别是前后可以有非p元素,不一定是父元素的第二个子元素
:nth-last-of-type(n)
p:nth-last-of-type(2)
同上,从最后一个元素来计数
:root
:root
选择文档的根元素
:empty
p:empty
选择没有子节点的p元素包含文本节点
:enabled
input:enabled
选择每个启用的input元素
:disabled
input:disabled
选择每个禁用的input元素
:checked
input:checked
选择每个被选中的input元素
:not(selector)
:not(p)
选择所有非p元素
Selenium 中则是采用 了来自Sizzle 的css3 定位扩展,它的语法更加灵活易懂。
:nth(n)
:eq(n)
li:nth(2)
li:eq(2)
同:nth-child(n),但是从0开始
:first li:first 同:first-child
 :last li:last 同:last-child
:even li:even 在其父元素中的li 子元素集合中排在偶数位的集合
:odd li:odd 在其父元素中的li 子元素集合中排在奇数位的集合
:lt(n) li:lt(2) 在其父元素中的li 子元素集合中排在第n位之前的所有元素集合(不包含n),n从0开始
:gt(n) lg:lt(2) 在其父元素中的li 子元素集合中排在第n位之后的所有元素集合(不包含n),n从0开始
:only-child div:only-child 同:only-of-type
:empty p:empty 同CSS原生选择器:empty
:input :input 获取所有input类型的元素(包含input、select、textarea)
:text, :checkbox, :file, :password, :submit, :image, :reset, :button ... 获取指定类型的元素
 
 

自动化测试selenium----css选择器总结的更多相关文章

  1. selenium中CSS选择器定位

    selenium元素定位,CSS选择器定位效率会高很多. CSS选择器用于选择你想要的元素的样式的模式.表格摘自“菜鸟教程”,具体用法可去查阅 选择器 示例 示例说明 CSS .class .intr ...

  2. Selenium(五):CSS选择器(二)

    1. CSS选择器 1.1 选择语法联合使用 CSS selector的另一个强大之处在于:选择语法可以联合使用. html代码: <div id='bottom'> <div cl ...

  3. Selenium(四):CSS选择器(一)

    1. CSS选择器 前面我们学习了根据 id.class属性.tag名选择元素. 如果我们要选择的元素没有id.class 属性,或者有些我们不想选择的元素也有相同的id.class属性值,怎么办呢? ...

  4. selenium元素定位之css选择器

    在selenium元素定位时会用到css选择器选取元素,虽说xpath在定位元素时能解决大部分问题,但使用css选择器选取元素也是一种不错的选择. css相较与xpath选择元素优点如下: 表达式更加 ...

  5. Selenium系列(十二) - 自动化必备知识之CSS选择器的详细使用

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...

  6. selenium - css 定位

    前言: CSS(Cascading Style Sheets)是一种语言,它被用来描述 HTML 和 XML 文档的表现. CSS 使用选择器来为页面元素绑定属性.这些选择器可以被 selenium ...

  7. 自动化测试selenium教程

    什么是自动化测试: 自动帮我们测试一个系统里面的主要功能,一个app.电脑网站.网页,每个系里面许多的功能,好比一个淘宝页面,里面N多功能,登录.注册,推荐,商品详情.评论等等:软件生命周期:需求调研 ...

  8. 使用CSS选择器进行元素定位

    在selenium webdriver中,支持使用CSS选择器来进行元素定位,事实在真的投入工作,大量编辑用例和元素定位的时候,使用css 和 xpath才是经常需要用到的. 之前有专门讲过使用xpa ...

  9. CSS选择器定位的使用

    CSS 可以比较灵活选择控件的任意属性,一般情况下定位速度要比XPath 快,但对于初学者来说比较难以学习使用,下面我们就详细的介绍CSS 的语法与使用.一.CSS 选择器的常见语法: 例如下面一段代 ...

  10. css选择器用法,使用css定位元素,css和xpath元素定位的区别

    css定位元素 1.什么是css? CSS(Cascading Style Sheets)层叠样式表,是一种语言,用来描述html或者xml的显示样式.在css语言中有css选择器,在selenium ...

随机推荐

  1. ffmpeg-20160831-bin.7z

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 5 屏幕横向放大 20 像素 6 屏幕横向缩小 20 像素 S 下一帧 [ -2秒 ] +2 ...

  2. html中的a标签(超链接)的使用

    a标签即超链接,用于从一张页面链接到另一张页面.其最重要的属性是href属性,它指示链接的目标. 例如: <a href="http://www.baidu.com/"> ...

  3. hdu 1502 Regular Words

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1502 思路:给定一个n,分别由n个a,b,c组成的字符串的所有前缀中a的个数大于等于b的个数大于等于c的个 ...

  4. 3.通过现有的PDB创建一个新的PDB

    实验说明:创建PDB除了可以通过种子PDB创建外,现在测试通过一个现有的用户PDB克隆创建新的PDB数据库 实验步骤: 1.创建测试数据 SQL> alter session set conta ...

  5. FP-growth高效频繁项集发现

    FP-growth 算法优缺点: 优点:一般快于Apriori 缺点:实现比较困难,在某些数据上性能下降 适用数据类型:标称型数据 算法思想: FP-growth算法是用来解决频繁项集发现问题的,这个 ...

  6. 详解ABP框架的多租户

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:ABP框架对多租户场景提供了很好的支持,内建了多租户的处理机制,今天我们来深入解析一下 ...

  7. SQL Server 数据库巡检脚本

    --1.查看数据库版本信息 select @@version --2.查看所有数据库名称及大小 exec sp_helpdb --3.查看数据库所在机器的操作系统参数 exec master..xp_ ...

  8. 爱特梅尔ATMEL全系列芯片解密单片机破解

    爱特梅尔ATMEL全系列芯片解密单片机破解 ATMEL芯片介绍: ATMEL公司为全球性的业界领先企业,致力于设计和制造各类微控制器.电容式触摸解决方案.先进逻辑.混合信号.非易失性存储器和射频 (R ...

  9. C#写入和读出文本文件

    C#写入和读出文本文件 写入文本文件 class WriteTextFile { static void Main() { //如果文件不存在,则创建:存在则覆盖 //该方法写入字符数组换行显示 st ...

  10. inner join on 和 where = 的区别!

    请看下面两条语句:select * from table1 inner join table2 on table1.id = table2.idselect * from table1,table2 ...