Cada vez que tenemos que cambiar un estilo CSS en la web, Toni y yo jugamos con las biseas de piedra para ver quién es la “suerte” que puede hacer la tarea. ¿Qué tal, puedes preguntar? Bueno, durante mucho tiempo trabajar con HTML y CSS fue un dolor en un **, porque reparar algo en un extremo rompió muchas cosas en otros lugares.

No puede evitar admirar y maravillarse en el trabajo realizado por desarrolladores frontales.
Pero la verdad es que CSS ha cambiado mucho en los últimos años y, si aprovecha sus nuevas características, es mucho más fácil configurar y robar su sitio de manera correcta y eficiente. En mi opinión, dos de los grandes progresos en el CSS que he visto recientemente son la inclusión, en primer lugar, flexionar (al organizar filas y columnas) y, un poco más tarde, de la cuadrícula (al organizar las cuadrículas).
CSS está lleno de funciones que pueden simplificar su trabajo. Y hoy veremos dos de ellos: pseudo-elementos y pseudo-selectores. Cómo “crear contenido” con pseudoelementos CSS Pseudo-Elements CSS es un mecanismo para acceder a partes del HTML que no tienen un nodo asociado en DOM. Por ejemplo, una “parte de nuestro documento” puede ser “la primera fila de un párrafo”, “la primera letra de un párrafo” o “la selección hecha por el usuario”, ninguno de ellos tiene un nodo asociado. Pero los pseudo-elementos también son una forma de crear contenido antes o después de un elemento existente a través de CSS. Los pseudo-elementos disponibles en CSS3 son:
:: antes: Agregar contenido antes de un elemento
:: AFTE R: Agregar contenido después de un elemento
:: primer-eneletter: seleccione la primera letra del elemento “bloque” (es decir, aquellos cuya propiedad de visual elemento “bloque”.
:: Selección: se refiere a las partes del documento que el visitante seleccionó
Como puede ver, los pseudo-elementos se caracterizan para comenzar con un par de dos puntos (: :). Y así es como los usas. Seleccionar las partes del documento suponga, por ejemplo, que queremos que un cierto párrafo tenga primero en naranja y subrayado. Bueno, solo haz algo como esto:
P :: primera línea {color: naranja; Decoración de texto: subrayado; } Y obtendrá el resultado correcto: lorem ipsum dolor sitt, consecuencia adipiscing elit. Vestibulum Mollis Leo en Turpis Interdum, en Phartra Velit Elementum. Nam eget lacus sed lacus dictum sellerisque. Proin Porta Ligula Sed Mi Semper, Vel Interdum Massa Auctor. Pellentesque et Massa Congue, Tincidunt Erat AC, Tincidunt Elit. SED AC Dolor Metus. Nam Commrodo Metus Sed Ligula ConsacRate Interdum. Curabitur Odio est, Tezpor Id Egestas Nec, Aliquam en Nisl. Si, por otro lado, desea cambiar la selección, el enfoque es exactamente el mismo. Tenga en cuenta que el número de propiedades CSS que podemos cambiar se limita al color, el fondo, el cursor y el esquema:
P :: selección {fondo: #21acdes; Color blanco; } Puede ver el resultado en el siguiente párrafo, suponiendo seleccionar algo: lorem ipsum dolor sitt, consecuencia adipiscing elit. Vestibulum Mollis Leo en Turpis Interdum, en Phartra Velit Elementum. Nam eget lacus sed lacus dictum sellerisque. Proin Porta Ligula Sed Mi Semper, Vel Interdum Massa Auctor. Pellentesque et Massa Congue, Tincidunt Erat AC, Tincidunt Elit. SED AC Dolor Metus. Nam Commrodo Metus Sed Ligula ConsacRate Interdum. Curabitur Odio est, Tezpor Id Egestas Nec, Aliquam en Nisl. Creación de contenido nuevo también tiene la opción de agregar contenido dinámicamente a su página, por ejemplo, imagine que tiene una lista de elementos como este:
uno
dos
Tres
Por lo general, estas son las listas:
una
Dos
Tres
Pero puede cambiarlo para que cada elemento esté separado de lo siguiente usando una barra azul:
una
Dos
Tres
Uso de pseudo-elemento :: después en cada artículo en la lista, como sigue: ul li {display: inline; } ul li :: después {color: #21acdes; Contenido: “|”; Pantalla: bloque en línea; } Con :: antes y :: Después de los pseudo-elementos, puedes hacer muchas cosas grandes. Por ejemplo, puede combinar más fondos en un solo elemento, puede mostrar las URL de los enlaces cuando se imprime la página, puede pedir los elementos flotantes, etiquetar los bloques, embellecer su impresión, etc.
Cómo aplicar estilos con mayor precisión utilizando pseudoclase pseudoclasses CSS nos permite seleccionar elementos de nuestro sitio que están en un determinado estado o que tengan una propiedad especial que los distinga. El ejemplo más común (y más antiguo) es probablemente las pseudo-clases de enlace: A: el enlace son aquellos enlaces que aún no ha visitado
R: Visitado es cualquier enlace que ya haya visitado
A: Hover es el enlace que coloca
R: El enfoque coincide con el enlace que se enfoca actualmente (que es similar a pasar con el mouse pero usando el teclado en lugar del mouse)
R: Active coincide con el enlace en el que está haciendo clic en la actualidad
En CSS hay alrededor de 60 pseudo-clases. La gran mayoría de ellos le permiten filtrar elementos de acuerdo con su condición (por ejemplo, puede seleccionar elementos solo en lectura, adivinó, pseudoclasa: solo lectura). Pero hay algunas “excepciones” interesantes de esta regla que vale la pena mencionar.
Pero antes de hacerlo, solo una breve nota secundaria: observe cómo puede distinguir una pseudo-clase de un pseudo-elemento, porque el primero comienza con un solo dos puntos (), mientras que el segundo comienza con dos (:).
Seleccionando a los niños de un elemento usando pseudo-clases “Child” y “Escriba”. ¿Recuerdas el ejemplo que vi antes en el que agregué una barra vertical para separar los elementos de una lista? Bueno, si miras cuidadosamente, verás que la regla que hemos establecido tampoco funciona:
una
Dos

Tres
Porque el último elemento también incluye una barra vertical, aunque no deberías. Si queremos eliminarlo, podemos hacer algo como esto:
Ul li {display: inline; } ul li :: después {color: #21acdes; Contenido: “|”; Pantalla: bloque en línea; } ul li: último child :: después {display: none; } Eso funciona exactamente como te imaginas: uno
Dos
Tres
Como puede ver, todo lo que hacemos es agregar una nueva regla usando pseudo-class: Last-Child, que nos permite seleccionar el último elemento de nuestra lista y, una vez que la tenemos, para ocultar su pseudo-elemento :: después con la propiedad de visualización establecida en ninguna. Características especiales de * -child y * -Of -lype Hay tres variantes de * -cilla:
: El primer hijo coincide con el primer hijo de un artículo (¡dah!)
: Último hijo hace lo mismo pero con este último
: nth-child (i), adivinó, seleccione el primer elemento (por ejemplo, enésimo hijo (2) coincide con el segundo hijo)
Así que veamos y pensemos en los siguientes CSS:
Li Strong: First-Child {color: naranja; Decoración de texto: subrayado; } y el siguiente fragmento HTML:
lorem ipsum puerta sit amet. iPsum puerta sit amet.
¿Qué crees que sucederá? En principio, parece que en los tres casos, la palabra ipsum será naranja y subrayada, porque iPsum es el primer niño en cada elemento, ¿verdad? Ver:
Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet.
Bueno, bastante cerca. ¿Puedes adivinar por qué sucedió esto? Pseudoclas: First-Child se aplica al primer hijo de un artículo. En la primera oración, iPsum es la primera etiqueta fuerte, que resulta ser el primer niño. En la segunda oración, el primer nodo infantil es EM (con la palabra lorem) y luego una etiqueta fuerte viene con la palabra ipsum. Por lo tanto, esta etiqueta fuerte no es el “primer hijo”. Finalmente, en la tercera oración hay dos etiquetas que se ajustan a nuestra regla: iPsum (es como la primera oración) y el sitio. Observe cómo el sitio es una etiqueta fuerte que es el primer hijo de su etiqueta principal (EM). Entonces, ¿qué sucede si nos gustaría enfatizar la primera etiqueta fuerte de cada elemento? Bueno, debemos usar una pseudo-clase diferente y asegurarnos de que solo coincidamos con elementos que sean niños directos de Li: li> fuerte: primero de tipo {color: naranja; Decoración de texto: subrayado; } que funciona según las expectativas: Lorem Ipsum Dolor Sitt AMET.
Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet.
Bastante genial, ¿verdad? Nuevamente, hay tres variantes de este pseudo-clase:
X: el primer de tipo coincide con el primer hermano cuyo tipo es x
X: el último tipo de selección del último
X: en el enésimo de tipo (i) coincide con el primer hermano cuyo tipo es x
Seleccionar lo contrario con: No finalmente, el pseudoclass del que quería hablar hoy es: no. : No es una pseudo-clase que se ajuste a esos elementos que no cumplen con una determinada propiedad. Por ejemplo, volvamos a nuestro ejemplo anterior:
una
Dos
Tres
Para resolver el problema de la barra que aparece en el último elemento, práctico (1) agregué la barra a todos los elementos li y (2) sobrescribí la regla en el último elemento y lo escondí: la li {display: inline; } ul li :: después {color: #21acdes; Contenido: “|”; Pantalla: bloque en línea; } ul li: último child :: después {display: none; } Pero esto no parece muy óptimo, ¿no? Visitamos el primer tule y luego tenemos que reparar nuestros estilos en el último artículo. Lo que realmente queríamos era agregar la barra a todos los elementos, excepto el último … bueno, podemos hacerlo aplicando Pseudo-Claasa: no y combinándolo con: Last-Child: Ul Li {Display: Inline; } ul li: no (: último hijo) :: después de {color: #21acdes; Contenido: “|”; Pantalla: bloque en línea; } Que aplica el estilo de todos los elementos que no son el último elemento (: no (: último hijo)), que describe perfectamente nuestro objetivo y, por lo tanto, resuelve el problema: uno
Dos
Tres
En conclusión, los pseudo-elementos y los CS de pseudo-clases nos permiten ser mucho más precisos cuando accedemos a los diferentes elementos de nuestro sitio. Con ellos, podemos escribir reglas CSS más concisas y más específicas, lo que simplifica su mantenimiento y evita las posibilidades de tener que anular continuamente las reglas genéricas para casos específicos. Espero que te haya gustado esta publicación y, si te gustó, ¡por favor, distribuya a tus amigos! Imagen presentada por JFL en Unsplash.
Pseudo-elementos y pseudo-clase en CSS
Tags Seudo
homefinance blog