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

85
Visualizações
Imagen de centro HTML en círculo flexible

Tengo un problema. En mi proyecto angular tengo el siguiente código:

 onChange(event: any) { var reader = new FileReader(); reader.onload = (event: any) => { this.url = event.target.result; }; reader.readAsDataURL(event.target.files[0]); }
 #upload-icon { align-items: center; font-size: 30px; } .image-content { width: 70px; height: 70px; } input[type="file"] { display: none; } .custom-file-upload { border: 1px solid #ccc; padding: 6px 12px; cursor: pointer; height: 70px; width: 70px; border-radius: 50%; display: flex; flex-direction: column; text-align: center; justify-content: center; } img { border-radius: 50%; height: 70px; width: 70px; object-fit: contain; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.5/angular.min.js"></script> <label class="custom-file-upload"> <input type="file" accept="image/*" capture="environment" class="fileInput" id="file-input" (change)="onChange($event)"> <div class="image-content" *ngIf="!url"> <i class="far fa-images"></i> </div> <div class="image-content" *ngIf="url"> <label for="file-input"> <img [src]="url"/> </label> </div> </label>

Ahora lo que intento hacer es crear un círculo con un borde de 1 px. En ese ciclo quiero mostrar un icono, para mostrar que se puede subir una imagen. Al hacer clic en el círculo, puede seleccionar su archivo. Cuando presione cargar, el círculo se llenará con su imagen, pero cuando haga clic en su imagen nuevamente, puede volver a cargar una imagen. El problema es que el icono y la imagen no están centrados: ingrese la descripción de la imagen aquí y ingrese la descripción de la imagen aquí

¿Cómo puedo arreglar esto?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Establezca 100% como altura máxima y ancho máximo para la imagen y el icono alternativo, y reemplace text-align: center; para align-items: center; para .custom-file-upload

HTML actualizado -

 <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.5/angular.min.js"></script> <label class="custom-file-upload"> <input type="file" accept="image/*" capture="environment" class="fileInput" id="file-input" (change)="onChange($event)"> <div class="image-content" *ngIf="!url"> <i class="far fa-images icon"></i> </div> <div class="image-content" *ngIf="url"> <label for="file-input"> <img [src]="url"/> </label> </div> </label>

CSS actualizado -

 #upload-icon { align-items: center; font-size: 30px; } .image-content { max-width: 100%; max-height: 100%; } input[type='file'] { display: none; } .custom-file-upload { border: 1px solid #ccc; padding: 12px; cursor: pointer; height: 70px; width: 70px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; } img, .icon { max-height: 100%; max-width: 100%; }

ejemplo de trabajo aquí

Si desea cubrir toda la división, use la imagen como imagen de fondo; vea el ejemplo aquí

over 4 years ago · Santiago Trujillo 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