Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

276
Visualizações
Las columnas y filas adhesivas de la tabla HTML dejan de funcionar cuando agrego css para mantener la tabla dentro de los límites de la página

Tengo una tabla grande que se desplaza horizontal y verticalmente con la primera columna pegajosa y las tres filas de encabezado pegajosas. Esto funciona hasta cierto punto. Sin embargo, la mesa se extiende más allá del lado derecho de la pantalla.

ingrese la descripción de la imagen aquí

Me gustaría que permaneciera en los límites de la pantalla. En la imagen se puede ver que tengo dos problemas:

  1. La tabla se extiende más allá del final de la pantalla a la derecha.
  2. El encabezado Nombre está detrás de la lista de nombres cuando se desplaza (esto no sucede en el jfiddle adjunto)

Cuando agrego este css:

 table { display: block; overflow: scroll; }

La mesa está dentro de los límites de la pantalla; sin embargo, el adhesivo en las filas de encabezado no funciona. La columna izquierda pegajosa tampoco es tan buena (ver la imagen).

ingrese la descripción de la imagen aquí

Por favor vea mi intento de jfiddle; sin embargo, no puedo hacer que Bootstrap funcione (incluí los cdns).

https://jsfiddle.net/Glyndwr/2tfLu87a/11/

Mi objetivo es tener:

  1. La mesa permanece dentro de los límites de la pantalla.
  2. Las filas de encabezado superior y la columna izquierda se pegan cuando me desplazo
  3. El encabezado del nombre permanece al frente cuando me desplazo

Un poco más de explicación relacionada con hacer que la celda "Nombre" en la esquina superior derecha sea pegajosa. Esta es la posición inicial:

ingrese la descripción de la imagen aquí

Cuando me desplazo hacia la derecha, la columna "Nombre" está al frente, lo cual es correcto:

ingrese la descripción de la imagen aquí

Sin embargo, cuando me desplazo hacia abajo, la celda "Nombre" no se pega:

ingrese la descripción de la imagen aquí

Entonces, lo que necesito es que la celda "Nombre" se pegue tanto en el desplazamiento hacia la derecha como hacia abajo.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede configurar/hacer que la thead sea sticky en lugar de filas/ tr s individuales. En cuanto a los nombres en la fila, dado que son el primer hijo de los tr s de cada tbody , puede seleccionarlos y aplicar estilos, así:

 tbody>tr>td:first-child{ background: red; position: sticky; left: 0; }

Luego puede envolver la tabla dentro de un contenedor de bloques para darle desplazamiento vertical y horizontal. Vea el ejemplo de CSS a continuación:

 .table-wrapper{ margin: 0 auto; display: block; width: 98vw; height: 95vh; overflow: auto; border: 1px solid black; }

He editado tu jsfiddle aquí .

about 4 years ago · Juan Pablo Isaza Relatório

0

Una respuesta parcial. Todavía necesito descubrir cómo solucionar mi problema principal de mantener la tabla dentro de la pantalla. @Yong responde en parte al problema de la celda "Nombre".

Reemplazar:

 table thead tr.first th { padding: 3px; position: -webkit-sticky; position: sticky; top: 0; z-index: 1; background: white; } table thead tr.second th { padding: 3px; position: -webkit-sticky; position: sticky; z-index: 1; background: white; } table thead tr.third th { padding: 3px; position: -webkit-sticky; position: sticky; z-index: 1; background: white; }

Con el código de Yong (se me ocurrió reemplazar z-index: 1 con z-index-3):

 thead { position: -webkit-sticky; position: sticky; top: 0; z-index: 3;/*replace 1 with 3 */ background: white; border: 1px solid black; }

Esto también hace que el código sea mucho más simple. También podríamos reemplazar el índice z del código original: 1 con el índice z-3.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda