自动化测试——css元素定位

文章目录
- 一、css定位场景
- 二、css相对定位的优点
- 三、css的调试方法
- 1、表达式中含有字符串:表达式中的引号一定和外面字符串的引号相反
- 四、css基础语法
- 1、标签定位
- 2、class定位
- 特别注意:当class类型的属性值包含多个分割值,$('.s_tab s_tab_1z9nv')不适用。
- 解决方法:将空格替换为. $('.s_tab.s_tab_1z9nv')
- 3、id定位
- 4、属性表达式
- 五、css关系定位
- 1、并集
- 2、临近兄弟(平级、挨着)
- 3、兄弟(平级、不挨着)
- 4、父子关系
- 后代(用的多)
- 六、css的顺序关系
- 父子关系+顺序
一、css定位场景
1、支持web产品
2、支持app端的webview(原生的不支持)
二、css相对定位的优点
1、可维护性强
2、语法更加简洁
3、解决各种复杂的定位场景
三、css的调试方法
css定位的3要素:$、小括号、字符串(单引号、双引号都支持)
进入浏览器console
输入:$("css表达式")或者$$("css表达式")
1、表达式中含有字符串:表达式中的引号一定和外面字符串的引号相反
四、css基础语法
| 类型 | 表达式 |
|---|---|
| 标签 | 标签名 |
| 类 | .class属性值 |
| id | #id属性值 |
| 属性 | [属性名=’属性值‘] |

1、标签定位
支持索引

2、class定位

特别注意:当class类型的属性值包含多个分割值,$(‘.s_tab s_tab_1z9nv’)不适用。

解决方法:将空格替换为. $(‘.s_tab.s_tab_1z9nv’)

3、id定位

4、属性表达式

五、css关系定位
| 类型 | 表达式 |
|---|---|
| 并集 | 元素,元素 |
| 临近兄弟 | 元素+元素 |
| 兄弟 | 元素1~元素2 |
| 父子 | 元素>元素 |
| 后代 | 元素 元素 |
1、并集

2、临近兄弟(平级、挨着)

$('#lg+#result_logo')

3、兄弟(平级、不挨着)

$('#lg~#form')

4、父子关系
可以一直嵌套下去
局限性:不稳定
$('#head>.head_wrapper')

后代(用的多)
$('#head #lg')

可以一直嵌套下去
$('#head .s_form #lg')

六、css的顺序关系
| 类型 | 表达式 |
|---|---|
| 父子关系+顺序 | 元素 元素 |
| 父子关系+标签类型+顺序 | 元素 元素 |

父子关系+顺序
$('#wrapper>div:nth-of-type(1)')


相关文章:
自动化测试——css元素定位
文章目录一、css定位场景二、css相对定位的优点三、css的调试方法1、表达式中含有字符串:表达式中的引号一定和外面字符串的引号相反四、css基础语法1、标签定位2、class定位特别注意:当class类型的属性值包含多个分割值,$(.s_tab s_tab_1z9n…...
ChatGPT可能马上取代你,这是它能做的十个工作
ChatGPT 的横空出世,在业界掀起了惊涛骇浪。专家表示,ChatGPT 和相关人工智能技术可能会威胁到一些工作岗位,尤其是白领工作。 自去年11月发布以来,新型聊天机器人模型 ChatGPT 已经被用于各种各样的工作:撰写求职信、编写儿童读物,甚至帮助学生在论文中作弊。谷歌公司发…...
ubuntu转储coredump
方法一: 输入以下命令即可,其中${USER}为自己电脑的用户名: ulimit -c unlimited echo "/home/${USER}/core.%p" > /proc/sys/kernel/core_pattern 方法二: Disable apport : sudo systemctl stop apport.servicesudo system…...
基于单片机的毕业设计推荐
** 2023基于单片机的毕业设计推荐: ** 1、基于51单片机的多功能门禁系统(低端、功能限制较大)。 2、基于单片机的多功能实时时钟。 3、基于单片机的音乐播放器。 4、基于STM32单片机的多功能门禁系统(高端、没有限制)…...
APP测试中ios和androis的区别,有哪些注意点
目录 一、运行机制不同 二、对app内存消耗处理方式不同 三、后台制度不同 四、最高权限指令不同 五、推送机制不同 六、抓取方式不同 七、灰度发版机制不同 八、审核机制不同 总结感谢每一个认真阅读我文章的人!!! 重点:…...
使用 Xcode 创建第一个 Objective-C 命令行程序 HelloWorld
总目录 iOS开发笔记目录 从一无所知到入门 文章目录创建项目运行项目,查看日志输出同一项目下新增子目录,切换要运行的 Target创建项目 打开 Xcode ,Create a new Xcode project 接下来的默认界面: 切换到 macOS 下ÿ…...
【蓝桥杯集训8】哈希表专题(3 / 3)
目录 手写哈希表 1、开放寻址法 2、拉链法 字符串前缀哈希表法 2058. 笨拙的手指 - 哈希表 秦九韶算法(进制转换) 枚举 秦九韶算法——将x进制数转化为十进制数 手写哈希表 活动 - AcWing 1、开放寻址法 设 h(x)k,也就是 x 的哈希值…...
Java Scanner 类,超详细整理,适合新手入门
目录 一、什么是 Java Scanner 类? 二、引用数据类型 1、引用数据类型的定义 三、Scanner 类有哪些常用方法? hasNext()用法 四、next() 与 nextLine() 区别 next(): nextLine(): 五、使用 next 方法 五、使用 nextLine方法 一、什…...
干货 | 中小企业选型 Elasticsearch 避坑指南
1、线上常见问题在我线下对接企业或线上交流的时候,经常会遇到各种业务场景不同的问题。比如,常见问题归类如下:常见问题1:ES 适合场景及架构选型问题。公司的核心业务是做企业员工健康管理,数据来自电子化后的员工体检…...
全局组件和局部组件
全局组件第一种定义方法:A、创建自己的组件:Loading.vueB、在main.js文件中引入组件并注册import Vue from vue import App from ./App.vue import * as filters from ./filterimport quanjuzujian from ./components/quanjuzujian.vueVue.component(qua…...
提取括号中的内容
正则能解决不嵌套的括号内容提取问题遇到一个问题,就是需要提取字符串中每一个中括号里的内容,在网上搜了一下,发现用正则表达式(\[[^\]]*\])可以提取中括号中的内容,以下面文本为匹配对象:PerformanceManager[第1个中…...
数据结构-算法的空间复杂度(1.2)
目录 1.空间复杂度 1.1 例子 1.2 空间的特殊性质 写在最后: 1.空间复杂度 空间复杂度也是一个数学表达式, 是对一个算法在运行过程中临时占用存储空间大小的量度。 他也是用大O渐进表示法。 1.1 例子 例1: 冒泡排序: v…...
【总结】python3启动web服务引发的一系列问题
背景 在某行的实施项目,需要使用python3环境运行某些py脚本。 由于行内交付的机器已自带python3 ,没有采取自行安装python3,但是运行python脚本时报没有tornado module。 错误信息 ModuleNotFoundError:No module named ‘torn…...
Linux:基于libevent读写管道代码,改进一下上一篇变成可以接收键盘输入
对上一篇进行改进,变成可以接收键盘输入,然后写入管道: 读端代码: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <s…...
C语言格式化输出总结:%d,%c,%s,%f, %lf,%m.nd,%m.nf,%m.ns 以及sprintf函数
凡事发生必将有益于我,高手,从来都不仅仅是具备某种思维的人,而是那些具备良好学习习惯的人,成为高手,无他,手熟尔!加油在最近的学习之中,对于格式化输出这个知识点,这里…...
Nginx之反向代理、负载均衡、动静分离。
Nginx之反向代理、负载均衡、动静分离。 1、Nginx是啥? 轻量级Web服务器、反向代理服务器、电子邮件(IMAP/POP3)代理服务器 在 BSD-like 协议下发行、占内存少、并发高(同时处理请求能力)。 2、安装 官网…...
0401不定积分的概念和性质-不定积分
文章目录1 原函数与不定积分的概念1.1 原函数1.2 原函数存在定理1.3 不定积分2 不定积分的性质3 基本积分表4 例题后记1 原函数与不定积分的概念 1.1 原函数 定义1 如果在区间I上,可导函数F(x)的导航为f(x),即对任一x∈Ix\in Ix∈I,都有 F′…...
数组中的各种迭代API方法手写
js的数组上有很多实用的方法,不论是在遍历数组上,还是在操作数组内元素上,它有许多不同的遍历数组的方法,同时它还有着可以直接操作数组中间元素的方法。 接下来,我来带大家手写数组里的 遍历方法 。 Array.forEach(…...
详解量子计算:相位反冲与相位反转
前言 本文需要对量子计算有一定的了解。需要的请翻阅我的量子专栏,这里不再涉及基础知识的科普。 量子相位反冲是什么? 相位反转(phase kickback)是量子计算中的一种现象,通常在量子算法中使用,例如量子…...
C++——C++11第三篇
目录 包装器 function包装器 bind 包装器 function包装器 function包装器 也叫作适配器。C中的function本质是一个类模板,也是一个包装器。 上面的程序验证,我们会发现useF函数模板实例化了三份。 包装器可以很好的解决上面的问题 ,让它只实…...
如何高效完成SVN到Git的无缝迁移:svn2git终极实战指南
如何高效完成SVN到Git的无缝迁移:svn2git终极实战指南 【免费下载链接】svn2git 项目地址: https://gitcode.com/gh_mirrors/sv/svn2git 如果你正在考虑将版本控制系统从SVN迁移到Git,那么svn2git工具将是你的最佳选择。这款专业的Ruby工具能够智…...
从DAP-Link看USB虚拟串口设计:手把手教你给STM32F407添加双通道调试功能
从DAP-Link看USB虚拟串口设计:手把手教你给STM32F407添加双通道调试功能 在嵌入式开发中,调试工具的性能直接影响开发效率。传统调试器往往需要额外串口芯片,而现代方案如DAP-Link通过USB CDC类实现虚拟串口,既节省硬件成本又能提…...
告别环境配置!M2FP镜像开箱即用,快速体验人体语义分割
告别环境配置!M2FP镜像开箱即用,快速体验人体语义分割 1. 为什么选择M2FP镜像 1.1 人体语义分割的实用价值 人体语义分割是计算机视觉领域的重要技术,它能将图像中的人体细分为不同部位(如头部、上衣、裤子等)。这项…...
Xcode设备兼容性难题的高效破解方案:跨版本调试支持工具(含自动化部署功能)
Xcode设备兼容性难题的高效破解方案:跨版本调试支持工具(含自动化部署功能) 【免费下载链接】iOSDeviceSupport All versions of iOS Device Support 项目地址: https://gitcode.com/gh_mirrors/ios/iOSDeviceSupport 当iOS开发者面对…...
LYGIA颜色处理完全教程:28种混合模式与色彩空间转换实战
LYGIA颜色处理完全教程:28种混合模式与色彩空间转换实战 【免费下载链接】lygia LYGIA, its a granular and multi-language (GLSL, HLSL, WGSL, MSL and CUDA) shader library designed for performance and flexibility 项目地址: https://gitcode.com/gh_mirro…...
Fish Speech 1.5开源模型合规指南:商用授权范围与衍生作品注意事项
Fish Speech 1.5开源模型合规指南:商用授权范围与衍生作品注意事项 Fish Speech 1.5 以其出色的多语言语音合成能力,正吸引着越来越多的开发者和企业将其集成到自己的产品中。然而,开源模型的使用并非“法外之地”,尤其是当你计划…...
OpenClaw任务监控:nanobot镜像执行日志分析与可视化方案
OpenClaw任务监控:nanobot镜像执行日志分析与可视化方案 1. 为什么需要任务监控? 上周我让OpenClaw自动处理一批Markdown文档的格式转换,第二天检查时发现有一半文件没处理完。翻遍日志才发现是模型在某个步骤"卡住"了——没有报…...
如何使用NoFences实现高效的Windows桌面图标管理
如何使用NoFences实现高效的Windows桌面图标管理 【免费下载链接】NoFences 🚧 Open Source Stardock Fences alternative 项目地址: https://gitcode.com/gh_mirrors/no/NoFences NoFences是一款开源免费的Windows桌面管理工具,专门用于解决桌面…...
Phi-3-mini-128k-instruct Chainlit集成:支持Markdown渲染、LaTeX公式与代码高亮
Phi-3-mini-128k-instruct Chainlit集成:支持Markdown渲染、LaTeX公式与代码高亮 1. 模型简介 Phi-3-Mini-128K-Instruct是一个38亿参数的轻量级开放模型,属于Phi-3系列中的高性能版本。这个模型经过精心训练,特别适合需要长文本理解和复杂…...
别再硬编码了!用CRMEB标准版的可视化定时任务,5分钟搞定自动发券
告别硬编码时代:CRMEB可视化定时任务实战指南 在电商系统开发中,定时任务就像一位不知疲倦的助手,默默处理着自动发券、订单状态更新、数据清理等重复性工作。但传统开发方式往往需要开发者手动编写Crontab配置或硬编码任务逻辑,不…...
