| |
Meaning |
Described in section |
| CSS 2.1 selectors. Following fragment was taken from W3C CSS 2.1 specification |
| * |
Matches any element. |
Universal selector |
| E |
Matches any E element (i.e., an element of type E). |
Type selectors |
| E F |
Matches any F element that is a descendant of an E element. |
Descendant selectors |
| E > F |
Matches any F element that is a child of an element E. |
Child selectors |
| E:first-child |
Matches element E when E is the first child of its parent. |
The :first-child pseudo-class |
E:link E:visited |
Matches element E if E is the source anchor of a hyperlink of which the target is not yet visited (:link) or already visited (:visited). |
The link pseudo-classes |
E:active E:hover E:focus |
Matches E during certain user actions. |
The dynamic pseudo-classes |
| E + F |
Matches any F element immediately preceded by a sibling element E. |
Adjacent selectors |
| E[foo] |
Matches any E element with the "foo" attribute set (whatever the value). |
Attribute selectors |
| E[foo="warning"] |
Matches any E element whose "foo" attribute value is exactly equal to "warning". |
Attribute selectors |
| E[foo~="warning"] |
Matches any E element whose "foo" attribute value is a list of space-separated values, one of which is exactly equal to "warning". |
Attribute selectors |
| E[foo%="warning"] |
Matches any E element whose "foo" attribute value is a list of space-separated values, one of which is equal to "warning" case insensitively. |
non-standard |
| E[lang|="en"] |
Matches any E element whose "lang" attribute has a hyphen-separated list of values beginning (from the left) with "en". |
Attribute selectors |
| DIV.warning |
Language specific. (In HTML, the same as DIV[class~="warning"].) |
Class selectors |
| E#myid |
Matches any E element with ID equal to "myid". |
ID selectors |
| CSS 3.0 selectors |
| E:not( {simple selector} ) |
Negation.
Example: E:not(:first-child) matches all E elements that are not at first child position in their containers. |
The negation pseudo-class |
| E[foo^="val"] |
Matches any E element having "foo" attribute whose value begins with the prefix "val" |
|
| E[foo$="val"] |
Matches any E element having "foo" attribute whose value ends with the suffix "val" |
|
| E[foo*="val"] |
Matches any E element having "foo" attribute whose value contains at least one instance of the substring "val". |
|
| E:nth-child(An+B) |
Matches any E element which is Bth child of an parent element after all its children have been split into groups of A elements each. A and B are integer numbers. |
Structural Pseudo Classes |
| E:nth-last-child(An+B) |
Matches any E element which is Bth child of an parent element after all its children have been split into groups of A elements each and counting from last to first direction. |
| E:not(simple selector) |
Represents an element that is not represented by the simple selector. |
Negation Pseudo Class |
| E:only-child |
Represents an element that has a parent element and whose parent element has no other children other than this one. |
:only-child pseudo-class |
| E:only-of-type |
Represents an element that has a parent element and whose parent element has no other element children with the same element name |
:only-of-type pseudo-class |
| E:has-child-of-type(T) |
Represents an element that has exactly single child element of type T among its other children. |
Non standard, h-smile core specific. |
| E:has-children-of-type(T) |
Represents an element that has one or more children elements of type T among its other children. |
| Run-time state flags (mostly h-smile core specific) |
| E:focus |
Matches element in focus state. |
STATE_FOCUS |
| E:tab-focus |
Matches element that got focus by pressing TAB keyboard button. |
STATE_TABFOCUS |
| E:focusable |
Matches any element which has tabindex defined or will accept focus. Behaviors attached to elements are responsible for "focusability" (accept HANDLE_FOCUS events). For example behaviors under <a href>'s and most of <input>/<widget> elements are focusable by default. Elements that have overflow:auto | scroll are also intrinsically focusable. |
STATE_FOCUSABLE |
| E:current |
Matches current element in collection. E.g. current <option> in <select>. |
STATE_CURRENT |
| E:checked |
Matches element in checked state. Internal behaviors checkbox, radio and select (for option) are known to set/reset this flag. |
STATE_CHECKED |
| E:disabled |
Matches element in disabled state. All elements in container having disabled attribute defined will also have this flag set. |
STATE_DISABLED |
| E:read-only |
Matches element in read-only state (with readonly attribute defined) |
STATE_READONLY |
| E:expanded |
Matches element in expanded state. Internal behavior select are known to set/reset this flag. Used for implementation of collapsible nodes in the <select>. |
STATE_EXPANDED |
| E:collapsed |
Inversed to :expanded attribute. Element can have either expanded or collapsed or neither expanded nor collapsed state but not both. |
STATE_COLLAPSED |
| E:incomplete |
Is set when element is in incomplete state - one of requested resources (e.g. background or foreground image) is not arrived yet. |
STATE_INCOMPLETE |
| E:busy |
E.g. is set when element requested some data to download and this data is not arrived yet. This flag can be set from code of behaviors. |
STATE_BUSY |
| E:empty |
Matches element that has no textual content and no children. |
STATE_EMPTY |
| E:has-child |
Matches element that has exactly one child. |
STATE_HAS_CHILD |
| E:has-children |
Matches element that has more than one child. |
STATE_HAS_CHILDREN |
| E:animating |
Element, at the moment, is animating e.g. expanding/collapsing |
STATE_ANIMATING |
| E:popup |
Element, at the moment, is shown as a popup. |
STATE_POPUP |
| E:owns-popup |
Element requested popup to be shown and that popup is shown at the moment. |
STATE_OWNS_POPUP |
| E:synthetic |
Element is synthesized by the engine while parsing e.g. all missed cells in tables (<td>) are getting this flag. |
STATE_SYNTHETIC |
| E:drop-target |
While inside the active drag-n-drop opeartion this element is a valid drop target for the dragged element. |
STATE_DROP_TARGET |
| E:drag-over |
Matches drop target element when dragged element is over it. |
STATE_DRAG_OVER |
| E:moving |
Matches drag-moving element (temporary copy of the drag-source). |
STATE_MOVING |
| E:copying |
Matches drag-copying element (temporary copy of the drag-source). |
STATE_COPYING |
| E:drag-source |
Matches drag source element in active drag-n-drop operation. |
STATE_DRAG_SOURCE |
| E:rtl |
Matches element in strictly Right-To-Left environment - when it or its nearest container has defined dir attribute and the value of that dir attribute is exactly "rtl". |
|
| E:ltr |
Matches element in strictly Left-To-Right environment - when it or its nearest container has defined dir attribute and the value of that dir attribute is exactly "ltr". |
|