--------------------------------------------------Css精确定位------------------------------------------
根据元素属性,属性名=属性值,id,class等都可 写成这种形式
By.cssSelector("标签名[属性名='属性值']");//标签名指的是要定位的标签名字
// 根据id属性=kw属性值,定位到input框,然后输入关键字
driver.findElement(By.cssSelector("input[id='kw']")).sendKeys("腾讯课堂");
driver.findElement(By.cssSelector("input[maxlength='255']")).sendKeys("腾讯课堂");
是否存在属性
By.cssSelector("标签名[属性名='属性值']");//只要定位的这个标签有这个属性且属性值唯一,就可以定位到
验证是否存在属性:
F12+ctrl+f --> 输入:input[maxlength="255"]
一个属性对应多个属性值
openBrowser("chrome");
driver.get("http://www.baidu.com");
// input框输入关键字
// driver.findElement(By.cssSelector("input[id='kw']")).sendKeys("腾讯课堂");
driver.findElement(By.cssSelector("input[maxlength='255']")).sendKeys("腾讯课堂");
// 定位到百度一下按钮,点击click
//class有多个属性值,是不用加点的
driver.findElement(By.cssSelector("input[class='bg s_btn']")).click();
多属性
By.cssSelector("标签名[属性名1='属性值'][属性名2='属性值']");//结合多个属性定位到元素
属性1如果找到多个,再找属性2,多个属性联合定位
// input框输入关键字
// driver.findElement(By.cssSelector("input[id='kw']")).sendKeys("腾讯课堂");
driver.findElement(By.cssSelector("input[maxlength='255'][autocomplete=\"off\"]")).sendKeys("腾讯课堂");