diff -r 6c3a8419f455 10_element_state.html
--- a/10_element_state.html Thu May 15 18:29:25 2014 -0700
+++ b/10_element_state.html Thu May 15 18:55:34 2014 -0700
@@ -3,26 +3,27 @@
Conformance tests for this section can be found in the webdriver module under the "element_state" folder.
Determining if an element is displayed
- The following steps MUST be used to determine if an element is displayed to a user. This specification refers to this as the element being "shown".
+ The following steps MUST be used to determine if an element is displayed to a user.
- The BODY element MUST be displayed irrespective of any CSS style
+ - Any INPUT elements of "type=hidden" MUST NOT be displayed.
+ - Any NOSCRIPT elements MUST NOT be displayed.
+ - OPTIONs and OPTGROUP elements MUST be displayed if and only if the enclosing select element is displayed.
+ - MAP elements are displayed if and only if the image it uses is displayed. Areas within
+ a map are displayed if the enclosing MAP is displayed.
+ - If element is a [[!DOM4]]
+ text node then it MUST be displayed.
+ - The element MUST NOT be displayed if there is a [[!css3-2d-transforms]] or [[!css3-3d-transforms]]
+ property that gives a negative x or y to the canvas. The User Agent MUST NOT allow negative scrolling.
+ - The element MUST NOT be displayed if that element, or any of its ancestors,
+ has a hidden attribute
+ or has
display:none in its computed CSS style.
- If element or at least one of its descendents have both
- DOMRect
- height and a DOMRect
- width greater than 0px, as returned by
element.
- getBoundingClientRect()
- then it MUST be displayed.
- - If element is a [[!DOM4]]
- text node then it MUST be visible.
- - The element MUST NOT be displayed if that element, or any of its ancestors,
- has a hidden attribute or has
display:none in its computed CSS style.
- - The element MUST NOT be displayed if there is a [[!css3-2d-transforms]] or [[!css3-3d-transforms]]
- property that gives a negative x or y to the canvas. The User Agent MUST NOT allow negative scrolling.
- - OPTIONs and OPTGROUP elements are treated as special cases, they are considered shown if and only if the enclosing select element is displayed.
- - MAP elements are shown if and only if the image it uses is displayed. Areas within
- a map are shown if the enclosing MAP is displayed.
- - Any INPUT elements of "type=hidden" are not displayed
- - Any NOSCRIPT elements MUST NOT be displayed.
+ DOMRect
+ height and a DOMRect
+ width greater than 0px, as returned by element.
+ getBoundingClientRect()
+ then it MUST be displayed.
- The element MUST NOT be displayed if any ancestor of the element has a fixed size, and has the CSS style with one of the following
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.