CSS :root selector
CSS :root selector
This CSS pseudo-class matches any document’s root element. It chooses the parent of the highest-level inside the document DOM or tree.
An element of <html> is always a root element in HTML. But the :root selector is similar to the html selector. It is because both the elements target the same element, although the selector :root includes the higher specificity.
Syntax:
:root { // CSS property }
Example:
<!DOCTYPE html> <html> <head> <title> :root selector </title> <style> :root { background: yellow; color: red; text-align: center; } </style> </head> <body> <h1> Welcome to this Page </h1> <h2> The :root selector is specified in this example. </h2> </body> </html>
Output:
Let’s try another method in which :root selector or html selector will implement simultaneously. If both these selector will implement within the specificity matter, the :root selector will win.
In the following example, we are using similar properties in both the selectors, i.e., :root selector and html selector. The :root selector properties will execute due to the higher specificity. Although a few properties are defined in the html selector but not in the :root selector, the html selector’s properties will work.
Example:
<!DOCTYPE html> <html> <head> <title> :root selector </title> <style> :root { background: violet; color: purple; text-align: center; } html { background: yellow; color: red; font-size: 30px; } </style> </head> <body> <h1> Welcome to this Page </h1> <h2> The html selector and :root selector is specified in this example. </h2> </body> </html>
As we can define in the above illustration that the color and background-color properties both are defined in :root selector and also in the html selector. Although in the result, the :root selector properties will execute, due to the :root selector’s higher specificity.
Output: