italia / bootstrap-italia

Bootstrap Italia è un tema basato su Bootstrap 5 conforme alle "Linee guida di design per i siti internet e i servizi digitali della Pubblica Amministrazione"
https://italia.github.io/bootstrap-italia
BSD 3-Clause "New" or "Revised" License
311 stars 163 forks source link

La classe is-invalid renderizza male sugli input type="date" #1207

Closed diegoandornoorangepix closed 1 month ago

diegoandornoorangepix commented 2 months ago

Esiste già una discussione sul tema che ti interessa, o su un tema simile?

Versione della libreria

2.9.0

Cosa

Inserendo la classe is-invalid in un input di tipo data con classe datepicker la crocetta viene ripetuta indefinitamente coprendo l'intero input

I test sono stati fatti su Mac (chrome e firefox) e su windows (firefox ed edge) aggiornati all'ultima versione Sui progetti proprietari e, per testare, direttamente nella documentazione di bootstrap-italia (come da foto allegata)

Screenshot 2024-09-04 alle 15 48 22

Per replicare l'errore è sufficiente: 1) andare nella pagina della documentazione https://italia.github.io/bootstrap-italia/docs/form/input-calendario/ 2) Fare tasto destro sul campo data e andare in ispeziona elemento 3) aggiungere la classe is-invalid alle classi dell'input attraverso il pannello di controllo del browser

Perché

Ritengo sia un errore perchè is-invalid è una classe nativa di bootstrap 5 (e infatti questo stesso test fatto sulla doc di bootstrap 5 va a buon fine) e su bootstrap italia sembra allineato per tutti gli altri input base ma non per le date

Contesto

No response

Altro

No response

diegoandornoorangepix commented 2 months ago

In locale ho risolto con una customizzazione dello style, aggiungendo 3 proprietà alle 3 già incluse da _just-validate.scss (vedere sempre la foto iniziale)

input[type=date].is-invalid {
    background-repeat: no-repeat;
    background-position: right;
    background-size: 20px;
}

Non saprei dove andare ad aggiornarlo per fare direttamente la pull request quindi le lascio qua che magari possono tornare utili

zetareticoli commented 1 month ago

Il bug nasce dal fatto che la input in questione non ha la classe .form-control. Aggiungendola, lo stato is-invalid si comporta correttamente.

Nel CSS di BSI c'è una dipendenza tra le due.

@Fupete forse è un errore nella documentazione, perché tutti gli altri casi di input prevedono sempre la classe .form-control

Fupete commented 1 month ago

Sentiamo @astagi ⬆️ poi fai/fate pure una PR di fix.

zetareticoli commented 1 month ago

@Fupete aperta PR