Pseudo-classes in CSS are called "pseudo" because they represent a state or condition of an element that is not present in the HTML markup. Unlike regular classes, which are assigned to HTML elements in the markup, pseudo-classes are not part of the document tree and cannot be selected using regular CSS selectors.
Instead, pseudo-classes are used to target specific states or behaviors of an element, such as when it is being hovered over by the mouse, when it is the first child of a parent element, or when it has focus. These states are not present in the markup itself, but are determined by the user's interaction with the page or by the browser's rendering of the page.
The term "pseudo" means "false" or "not genuine," and in the case of CSS pseudo-classes, it refers to the fact that they are not real classes that are assigned to HTML elements in the markup, but rather represent a simulated class that is applied based on the element's state or behavior.
In summary, pseudo-classes in CSS are called "pseudo" because they represent a simulated class that is not present in the HTML markup, but is used to target specific states or behaviors of an element.