diff --git a/09_elements.html b/09_elements.html
--- a/09_elements.html
+++ b/09_elements.html
@@ -95,9 +95,54 @@
Strategy name: xpath All WebDriver implementations MUST support finding elements by XPath 1.0 [[!XPATH]] with the edits from section 3.3 of the [[!html51]] specification made. If no native support is present in the browser, a pure JS implementation MAY be used. When called, the returned values MUST be equivalent of calling "evaluate" function from [[DOM-LEVEL-3-XPATH]] with the result type set to "ORDERED_NODE_SNAPSHOT_TYPE (7). The element visibility is determined by applying the following steps on an element: Essentially, this attempts to model whether or not a user of the browser could possibly find a way to view the The common usage pattern for If the steps above return true, then the element MUST also be interactable should it meet the other criteria for being interactable. If any part of the BODY can be brought into the current viewport, the return value MUST be true.
+
+ This implies that XPath
Element Visibility
+
+
+
+
+ display:none in its computed CSS style.element.getBoundingClientRect()
+ then it MUST be displayed.overflow:hidden, overflow-x:hidden or overflow-y:hidden, and the element's location as determined by getClientRects is not within the fixed size of the parent.WebElement without resizing the browser window.
+
+ isDisplayed is typically something similar to (in python):
+ element = driver.find_element(by = TAG_NAME, value= = "button")
+ if element.is_displayed():
+ element.click()
+ else
+ # So other deep magic of the unseen ages.
+
+ isDisplayed MUST return true if the centre of the element could be brought into the viewport. The exception to this would be the BODY element, which is generally assumed to always be displayed by users of the WebDriver spec. It is possible to interact with elements which may not have the centre point brought into the viewport by using the low level commands. This means that if any part of the element could be brought into the viewport by user action and its position could be used by low-level commands then a WebDriver implementation MAY return true.
+
| HTTP Method | Path Template | Notes | |
|---|---|---|---|
| GET | -/session/{sessionId}/element/{ELEMENT}/displayed | +/session/{sessionId}/element/{element}/displayed |
The following steps MUST be used to determine if an element is displayed to a user.
-display:none in its computed CSS style.element.getBoundingClientRect()
- then it MUST be displayed.overflow:hidden, overflow-x:hidden or overflow-y:hidden, and the element's location as determined by getClientRects is not within the fixed size of the parent.
- Essentially, this attempts to model whether or not a user of the browser could possibly find a way to view the WebElement without resizing the browser window.
-
- The common usage pattern for isDisplayed is typically something similar to (in python):
- element = driver.find_element(by = TAG_NAME, value= = "button") - if element.is_displayed(): - element.click() - else - # So other deep magic of the unseen ages. --
If isDisplayed returns true, then the element MUST also be
- interactable should it meet the other criteria for being interactable. If any part of the BODY can be brought into the current viewport, this MUST return true.
-
This implies that isDisplayed MUST return true if the centre of the element could be brought into the viewport. The exception to this would be the BODY element, which is generally assumed to always be displayed by users of the WebDriver spec. It is possible to interact with elements which may not have the centre point brought into the viewport by using the low level commands. This means that if any part of the element could be brought into the viewport by user action and its position could be used by low-level commands then a WebDriver implementation MAY return true.
If the ELEMENT does not represent a Document element, or it represents a Document element that is no longer attached to the document's node tree, then the WebDriver implementation MUST immediately abort the command and return a stale element reference error. If the top level browsing context currently receiving commands is no longer open a no such window error MUST be raised.
+
The command is used to determine the element visibility of the Document element connected with the web element reference given by the element fragment in the path.
The response is composed using the following algorithm:
+ +element fragment from the path.
| HTTP Method | Path Template | Notes |
|---|