带有style属性的元素的CSS选择器

3
我有一个带有以下样式的元素。
<ul class="textboxlist-bits" style="background-color: transparent;">

现在我希望根据样式属性选择元素。

CSS选择器ul [style="background-color: transparent;"]在这里不起作用。

请建议一个合适的选择器来识别这样的元素。

3个回答

5
我认为您只需要删除第一个空格即可: ```

我认为您只需要删除第一个空格即可:

```
ul[style="background-color: transparent;"]

现在它正在搜索所有具有此样式的ul标签;使用之间的空格尝试选择具有此样式的ul标签中的所有DOM元素。
这里是一个使用JavaScript的querySelector的示例,它也应该适用于Selenium。

1
一个可能的解决方案是选择所有具有匹配类名的元素,然后选择具有正确样式属性的第一个元素。您没有说测试使用哪种语言编写,但在C#中的示例如下:
``` IWebElement element = driver.FindElements(By.CssSelector("ul.textboxlist-bits")).First(e => e.GetAttribute("style").Contains("background-color: transparent;")); ```

-1

也许这个http://reference.sitepoint.com/css/elementtypeselector,不确定你是否指的是C语言中的if语句?

[ { attribute | attribute { = | |= | ~= } attribute value } ] {

declare stuff here..

 }

或者

这将匹配任何类型的输入,该输入与“submit”相匹配

 input[type="submit"] {
  declarations
}

1
我需要一个 CSS 定位器来查找具有给定样式属性的匹配 ul 元素。这是为了在 Selenium 中使用,我需要单击具有特定样式的该元素。 - Rogers Jefrey L
1
感谢您提供的输入,但此选择器在Selenium中无法使用。我尝试了类似以下的代码:ul.textboxlist-bits [style] {background-color: transparent;} - Rogers Jefrey L

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接