Search code examples
xpathcss-selectorsmoovwebtritium

In Tritium, what are the differences between CSS and XPath selectors?


What are the advantages / disadvantages of the two different selectors?

Should I use one over the other?


Solution

  • I think it's primarily a matter of user preference.

    To select the first child of all <p> elements, you'd do:

    • $("//p/*[1]") in Xpath
    • $$("p > *:first-child") in CSS

    I prefer using Xpath, but YMMV.

    Note that, internally, all CSS selectors are converted to Xpath. For example, the selector $$("#one") will be converted into $(".//*[id='one']").