Pseudo-clase
Pseudo-clasele vă permit să selectați stări sau poziții specifice ale unui element. De exemplu, :hover
selectează elementul când cursorul mouse-ului este peste el, :focus
selectează elementul când este selectat sau are focus, :nth-child()
selectează un anumit element copil dintr-un grup.
Exemple:
/* Select all links when hovered over and change the text color */
a:hover {
color: red;
}
/* Select the <input> element when it is focused and change the border */
input:focus {
border: 2px solid blue;
}
/* Select the second element in a group of <li> elements and change the text color */
li:nth-child(2) {
color: green;
}
Pseudo-elemente
Pseudo-elementele vă permit să creați elemente virtuale pentru a personaliza un element existent.
De exemplu, ::before
și ::after
creați elemente înainte și după un element ::first-line
și ::first-letter
selectați prima linie și prima literă a unui element.
Exemple:
/* Add content before each <p> element and style it */
p::before {
content: ">> ";
font-weight: bold;
color: gray;
}
/* Style the first letter of <h1> element */
h1::first-letter {
font-size: 2em;
font-weight: bold;
color: red;
}
Combinatoare
Combinatorii vă permit să combinați selectoare pentru a selecta elemente în funcție de relația lor. De exemplu, element1 element2
selectează element2
interiorul element1
, element1 > element2
selectează elementele secundare directe ale element1
, element1 + element2
selectează element2
imediat după element1
.
Exemple:
/* Select <span> elements inside an element with class "container" */
.container span {
color: purple;
}
/* Select <li> elements that are direct children of <ul> */
ul > li {
list-style-type: square;
color: blue;
}
Selectori de atribute
Selectorii de atribute vă permit să selectați elemente în funcție de valoarea atributelor lor. De exemplu, [attribute]
selectează elemente cu atributul attribute
, [attribute=value]
selectează elemente cu atributul attribute
egal cu value
, [attribute^=value]
selectează elemente cu atributul attribute
începând cu value
.
Exemple:
/* Select all elements with the attribute data-type */
[data-type] {
font-weight: bold;
color: orange;
}
/* Select all <a> elements with the href attribute starting with "https://" */
a[href^="https://"] {
color: blue;
text-decoration: underline;
}
:not()
selector
Selectorul vă permite să selectați elemente care nu se potrivesc cu un anumit selector. De exemplu, selectează elemente care nu au clasa, selectează elemente care nu au ID. :not()
:not(.class)
class
:not(#id)
id
Exemple:
/* Select all <div> elements that do not have the class "hidden" */
div:not(.hidden) {
display: block;
background-color: lightgray;
}
/* Select all <input> elements that do not have the ID "email-input" */
input:not(#email-input) {
border: 1px solid gray;
}
Aceste exemple demonstrează selecția avansată a elementelor în CSS. Puteți personaliza și aplica aceste tehnici pentru a stila și personaliza elementele de pe pagina dvs. web, după cum doriți.