The new AHA alert is fully responsive with modern looks and feel with accessibility features. The layout is using Bootstrap 4.5 with flex box.
<div class="aui-drag-section"> <div class="aui-drag-outline"> <div class="aui-drag-area d-flex align-items-center justify-content-center"> {/* on page load, File selection area, if file is not selected then 'd-flex', if file selected then 'd-none' */} <div class="d-flex justify-content-center align-items-center flex-column"> <i class="aha-icon-cloud-upload aui-drag-upload-icon"></i> <span class="h7 font-600 mb-0" aria-label="drag and drop files here">Drag and drop files here</span> <span class="my-3">or</span> <div class="aui-btn-files"> <input id="uploadfile" type="file" name="uploadfile" accept=".csv" aria-label="Browse Files" /> <label htmlFor="uploadfile" class="btn btn-round btn-primary m-0" aria-hidden="true">Browse Files</label> </div> </div> {/* Dragging Place Holder 'd-flex', and 'd-none to hide' */} <div class="d-none justify-content-center align-items-center flex-column aui-drop-files"> Drop files here </div> {/* after file is selected 'd-flex', and 'd-none' to hide' */} <div class="d-none justify-content-center align-items-center flex-column aui-uploading-files row w-100"> <div class="col-12"> <div class="h8 font-600 mb-1">Filename.csv</div> <div class="mb-3">File Size: 28mb</div> <div class="aui-progress-block mb-4"> <div class="d-flex w-100"> <div class="progress flex-grow-1"> {/* if failure use extra class 'progress-failure' */} <div class="progress-bar" role="progressbar" id="inProgess" style="width: 25%;" aria-valuenow="70" aria-valuemin="0" aria-valuemax="100" aria-describedby="progressInfo" aria-labelledby="progressPercent"> <span id="progressPercent">25%</span> </div> </div> <button class="btn btn-text aha-icon-cross ml-2" aria-label="Abort file upload"></button> </div> {/* if fileUploadError is true then 'd-block' with proper error message, else 'd-none' */} <div class='d-none'> <div class="aui-progress-fail-msg d-block" id="progressInfo">Sorry, we could not upload this file. Try saving it in a different format and upload again</div> <div class="aui-btn-files"> <input id="uploadfileagain" type="file" name="uploadfileagain" accept=".csv" aria-label="Upload Again" /> <label htmlFor="uploadfileagain" class="btn btn-round btn-primary mb-0 mt-4" role="button" aria-hidden="true">Upload again</label> </div> </div> {/* if no error, add class 'd-inline-block' else add 'd-none' */} <button class="btn btn-round btn-primary d-inline-block mt-4">Submit</button> </div> </div> </div> </div> </div> </div>