2012-12-10 57 views

回答

6

不幸的是,你不能。

问题是CSS选择器找不到文本。因此,您不能将text()='Continue' XPath转换为正在工作的CSS选择器。这是XPath直到今天才真正用于HTML元素选择的两个主要原因之一。

在CSS3中有一个:contains()伪类,但它早已消失。尽管如此,Sizzle是用于Selenium CSS选择的JS引擎。所以,如果你的浏览器不支持本机CSS选择(或禁用它),你可以使用它像这样:

button.buttonLargeAlt:contains('Continue')[type='submit'] 
+0

+1,或有总是jQuery的强大力量。 – Arran

+1

@Arran ...使用Sizzle。或者,事实上,jQuery团队_wrote_ Sizzle。但是,是的:)。 –

+1

+1“不幸的是,你不能。”但仅供参考,Selenium在大多数情况下不使用Sizzle,所以除非您确切知道它使用哪个浏览器版本,否则不能指望':co​​ntains'工作。 –

4

我通常使用这个cssify,这是很酷