Selenium Webdriver C#:::CSS选择器在Internet Explorer中工作不正常

Selenium Webdriver C#:::CSS选择器在Internet Explorer中工作不正常,css,selenium,xpath,selenium-webdriver,css-selectors,Css,Selenium,Xpath,Selenium Webdriver,Css Selectors,我正在使用Selenium C#自动化一个网站。在尝试使用CSS选择器单击元素时,我没有收到任何TouchElementException。但当我使用xpath时,一切都正常。有人能帮我理解为什么在使用CSS选择器时会出现这个问题吗 使用Xpath值 /*[@id=“主导航”]/ul/li[2]/a 使用CSS选择器值 #primary navigation>ul>li:n子元素(2)>axpathsli[2]为您提供第二个li元素 cssli:n子元素(2)为您提供作为其父元素的第二个子元素的

我正在使用Selenium C#自动化一个网站。在尝试使用CSS选择器单击元素时,我没有收到任何TouchElementException。但当我使用xpath时,一切都正常。有人能帮我理解为什么在使用CSS选择器时会出现这个问题吗

使用Xpath值

/*[@id=“主导航”]/ul/li[2]/a

使用CSS选择器值


#primary navigation>ul>li:n子元素(2)>a
xpaths
li[2]
为您提供第二个li元素

css
li:n子元素(2)
为您提供作为其父元素的第二个子元素的li元素

比如说

<ul>
  <p> something </p>
  <li> this will be returned </li>
</ul>
    某物

  • 这将被退回
这里xpath
li[2]
将不返回任何内容(或错误/异常),因为只有一个li元素

但是css
li:n子元素(2)
将返回li元素,因为它是父元素ul的第二个子元素

因此,选择器很可能工作正常,您无法“直接”在xpath和css选择器之间“转换”

li:n子(n)
!=<代码>li[n]