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

126
Visualizações
Haga que el ancho div coincida con el del contenido

Tengo un contenedor div que contiene un componente práctico de reacción, y quiero usar el tamaño automático del componente pero al mismo tiempo tenerlo centrado en la pantalla (o un div externo).

Entonces, en este ejemplo: https://jsfiddle.net/opike99/b1ux0rLy/5/

Estoy tratando de obtener el ancho de div #example1 para que coincida con el contenido de la tabla (por lo tanto, al cambiar el número de columnas, el ancho de div se ajustará en consecuencia).

HTML:

 <script src="https://cdn.jsdelivr.net/npm/handsontable@11.1/dist/handsontable.full.min.js"></script> <link type="text/css" rel="stylesheet" href="https://cdn.jsdelivr.net/npm/handsontable@11.1/dist/handsontable.full.min.css" /> <script src="https://handsontable.com/docs/8.3.2/components/numbro/dist/languages.min.js"></script> <div class="outer2"> <div class="outer1"> <div id="example1"> </div> </div> </div>

JS:

 const container = document.querySelector('#example1'); const numberOfColumns = 7; const hot = new Handsontable(container, { data: Handsontable.helper.createSpreadsheetData(5, numberOfColumns), colHeaders: true, rowHeaders: true, hiddenColumns: true, width: 'auto', height: 'auto', licenseKey: 'non-commercial-and-evaluation', }); // re-render your Handsontable instance hot.render()

CSS:

 .outer2 { } .outer1 { } #example1 { border-style: solid; /* width: fit-content; */ }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Así que he estado jugando con tu ejemplo y obtuve los siguientes resultados:

En realidad, hay tres cosas que debes hacer:

  1. El $('.wtHolder') tiene un width: 680px definido en un atributo de estilo, por lo que la única forma de eliminarlo es programáticamente.
  2. $('.ht_master.handsontable, #example1') necesita width: fit-content
  3. Usando un flexbox, pude centrar la mesa. Configuré display: flex; justify-content: center; en $('.outer1') .

Y por alguna razón, el orden en que se aplican también es importante. Lo hice funcionar con setTimeout , aunque probablemente quieras algo más sofisticado.

 setTimeout(function() { document.querySelector('.wtHolder').style.width = 'initial'; document.querySelector('#example1').style.width = 'fit-content'; const outer = document.querySelector('.outer1'); outer.style.display = 'flex'; outer.style.justifyContent = 'center'; }, 2000);

Déjame saber cómo vas.

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