Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

171
Vistas
cómo colocar el <a>debajo del <p>

Estoy tratando de obtener la etiqueta a debajo de la etiqueta p específica.

He intentado esto pero no funciona. Estoy tratando de cambiar el estilo CSS de la parte del enlace a color rojo y llegué con una línea de puntos rojos cuando al pasar el mouse, la línea se volverá sólida.

 var font_8 = document.getElementsByClassName('font_8');var elements = font_8.getElementsByTagName('a');

html:

 <p class="font_7" style="font-size:16px">text text text text<br> <span style="text-decoration:underline"><a href="URL-link" target="_blank" rel="noreferrer noopener">link link link</a></span>(text)</p> <p class="font_8" style="font-size:16px">text text text text<br> <span style="text-decoration:underline"><a href="URL-link" target="_blank" rel="noreferrer noopener">link link link</a></span>(text)</p>

js:

 <script> const styles = { textDecoration: 'none', color: 'red', borderBottom: '2px dotted currentColor', } function getElements() { var font_8 = document.getElementsByClassName('font_8');var elements = font_8.getElementsByTagName('a'); var len = elements.length; for (let i = 0; i < len; i++) { Object.keys(styles).forEach((key)=>{ elements[i].style[key]=styles[key] }) } for (let i = 0; i < len; i++){ elements[i].addEventListener('mouseover', function() { elements[i].style.borderBottom= '2px solid currentColor'; }) elements[i].addEventListener('mouseout', function() { Object.keys(styles).forEach((key)=>{ elements[i].style[key]=styles[key] }) }) } } getElements() </script>
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Usando JavaScript solo para aprender, esta es mi solución con un selector de consulta :

 const styles = { textDecoration: 'none', color: 'red', borderBottom: '2px dotted currentColor', } const normalStyle = 'dotted' const hoverStyle = 'solid' function applyStylesAndHover() { // querySelectorAll allows you to basically use a CSS selector in your JS const elements = document.querySelectorAll('.font_8 a'); elements.forEach((element) => { Object.keys(styles).forEach((key) => { element.style[key] = styles[key] }) element.addEventListener('mouseover', function() { element.style.borderBottomStyle = normalStyle; }) element.addEventListener('mouseout', function() { element.style.borderBottomStyle = hoverStyle; }) }) } applyStylesAndHover()
 <p class="font_7" style="font-size:16px"> text text text text <br> <span style="text-decoration:underline"> <a href="URL-link" target="_blank" rel="noreferrer noopener">link</a> </span>(text) </p> <p class="font_8" style="font-size:16px"> text text text text <br> <span> <a href="URL-link" target="_blank" rel="noreferrer noopener">link</a> </span>(text) </p>

Aunque para diseñar el <a> al pasar el mouse no necesita JavaScript. CSS es perfecto para esto:

 .font_8 a { /* An <a> inside of an element with the class of font_8 */ color: red; text-decoration: none; border-bottom: 2px solid red; } .font_8 a:hover { /* An <a> that is being hovered inside of an element with the class of font_8 */ border-bottom-style: dotted; }
 <p class="font_7" style="font-size:16px"> text text text text <br> <span style="text-decoration:underline"> <a href="URL-link" target="_blank" rel="noreferrer noopener">link</a> </span>(text) </p> <p class="font_8" style="font-size:16px"> text text text text <br> <span> <a href="URL-link" target="_blank" rel="noreferrer noopener">link</a> </span>(text) </p>

about 4 years ago · Juan Pablo Isaza Denunciar

0

Un problema que encontré aquí es que estás tratando de obtener <a> usando font_8.getElementsByTagName('a'); que no funcionará. deberá asignar una identificación a la etiqueta y obtenerla usando

var element = document..getElementsById('myAncor');

y para moverlo dentro de la etiqueta p, deberá agregar el element a font_8 usando .appenChild() .

editar: sry no entendí bien tu pregunta.

para hacer esto con el uso de JS

 var element= font_8[0].children[1].children[0]; element.addEventListener( // your core )

o

 var elements= document.querySelectorAll('.font_8 a'); //Your code elements[i].addEventListener( // your core )
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda