我需要识别“X”(取消)按钮。 HTML 看起来像这样:
<div class="ingredients-container-header">
<div class="ingredients-container-header-name">Ingredients:</div>
<div class="ingredients-container-header-close">
<span class="material-icons cancel-icon " style="color: rgba(0, 0, 0, 0.87); position: relative; font-size: 24px; display: inline-block; user-select: none; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;">cancel</span></div></div>
尝试直接通过跨度来做但它不起作用(问题可能是,它不是唯一的(许多取消按钮具有相同的跨度)
driver.FindElement(By.XPath("//span[@class ='material-icons cancel-icon')]"));
需要做的事情是按类进行:“ingredients-container-header-close”,然后以某种方式“向下”到跨度。有人能告诉我怎么做吗? (1个父元素和几个子元素,选择那个子元素)
最佳答案
你可以使用这个 Xpath :
//div[text()='Ingredients:']/following-sibling::div/span[contains(@class,'cancel-icon')]
cssSelector 将是:
div[class^='ingredients-container']+div>span
尝试其中之一!
关于c# - FindElement - div 类中的嵌套跨度类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49893466/