>웹 프론트엔드 >CSS 튜토리얼 >여러 CSS 클래스로 웹 요소를 식별하는 방법은 무엇입니까?

여러 CSS 클래스로 웹 요소를 식별하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-24 01:03:15816검색

How to Identify Web Elements with Multiple CSS Classes?

여러 CSS 클래스로 웹 요소 식별

@FindBy를 사용하여 여러 CSS 클래스로 웹 요소를 식별하는 데 문제가 발생했습니다. 주석. 코드 예제에서는 CSS 클래스 이름이 공백으로 구분될 수 있다는 사실을 고려하지 않은 className = "value test"의 사용을 보여줍니다.

XPath 일치 전략

원하는 요소를 찾으려면 XPath를 사용하는 것이 좋습니다. XPath를 사용하면 클래스 이름을 포함한 특정 기준에 따라 요소를 일치시킬 수 있습니다. 고려해야 할 몇 가지 XPath 일치 전략은 다음과 같습니다.

  • 정확한 일치:
driver.findElement(By.xpath("//div[@class='value test']"));

이 XPath 표현식은 정확한 일치를 보장하며 지정된 클래스에서 "value" 및 "test" 클래스를 모두 포함하는 요소를 찾습니다. order.

  • 클래스 포함:
driver.findElement(By.xpath("//div[contains(@class, 'value test')]"));

이 표현식은 관계없이 "값" 클래스와 "테스트" 클래스를 모두 포함하는 요소와 일치합니다.

  • 개인반 일치:
driver.findElement(By.xpath("//div[contains(@class, 'value') and contains(@class, 'test')]"));

이 표현식은 요소에 "값" 및 "테스트" 클래스가 모두 있음을 보장하지만 특정 순서를 적용하지는 않습니다.

대체 CSS 선택기

XPath 외에도 CSS 선택기도 가능합니다. 여러 클래스 이름을 기반으로 요소를 찾는 데 사용됩니다. 다음 CSS 선택기 표현식을 고려하세요.

  • 완전 일치:
driver.findElement(By.cssSelector("div[class='value test']"));
  • 클래스 하위 문자열 매칭:
driver.findElement(By.cssSelector("div[class*='value test']"));
  • 개인별 클래스 매칭:
driver.findElement(By.cssSelector("div.value.test"));

결론

XPath 또는 CSS 선택기를 사용하든, 정확한 요소 식별을 보장하려면 일치 기준을 신중하게 고려하는 것이 좋습니다. 요소에 여러 클래스가 있는 경우 앞서 언급한 기술 중 하나를 사용하면 원하는 웹 요소를 효과적으로 찾을 수 있습니다.

위 내용은 여러 CSS 클래스로 웹 요소를 식별하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.