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 162 forks source link

Problema di lettura dei titoli nel browser #1084

Open SvicoliNeiVicoli opened 8 months ago

SvicoliNeiVicoli commented 8 months ago

Versione di Bootstrap Italia

2.7.2

Comportamento atteso

sul mio sito in Drupal 10.2.2 Inserendo un nuovo contenuto (pagina con allegato) in cui nel titolo di esso è presente un apostrofo o un altro carattere speciale esso deve venir letto sempre come il carattere indicato.

Comportamento attuale

questo contenuto quando viene filtrato nella vista Bootstrap Italia List impostato come Modello List2 nel campo titolo mostra ' controllando sulla sorgente della pagina risulta che faccia due volte l'escape della stringa html quindi la prima scompone l'apostrofo e poi legge & e fà l'escape anche di essa.

Possibili soluzioni

Esiste un metodo per bypassare questo bug? io ho fatto due teorie, modificare il file corrispondente nella libreria del sito o creare una vista ad hoc senza usare Bootstrap Italia List

Contesto

Ho provato su diversi browser e il problema persiste. Lascio gli screen di quanto descritto

Cattura Cattura1 Cattura2

Virtute90 commented 8 months ago

Ciao @DiegoOGS, puoi fornire un pezzo di codice che genera la lista?

Questo dovrebbe essere il comportamento: Drupal dovrebbe generare un codice HTML circa così:

<li>
    <a href="#" class="list-item">
      <div class="it-right-zone">
        <span class="text">Link&#039;</span>
        <svg class="icon">
          <use
            href="/bootstrap-italia/dist/svg/sprites.svg#it-chevron-right"
          ></use>
        </svg>
      </div>
    </a>
  </li>

Invece il browser lo dovrebbe leggere così:

<li>
  <a href="#" class="list-item">
    <div class="it-right-zone">
      <span class="text">Link'</span>
      <svg class="icon">
        <use href="/bootstrap-italia/dist/svg/sprites.svg#it-chevron-right"></use>
      </svg>
    </div>
  </a>
</li>
SvicoliNeiVicoli commented 8 months ago

Cattura questo è il codice dal browser Il corrispettivo su Drupal non saprei dove trovalo tra i file del programma

zetareticoli commented 8 months ago

Sembra un problema di codifica dei caratteri speciali. L'apostrofo non è stato convertito correttamente.

SvicoliNeiVicoli commented 8 months ago

Sicuramente, a me risulta che faccia due volte l'escape della stringa html quindi la prima scompone l'apostrofo e poi legge & e fà l'escape di essa.

astagi commented 8 months ago

@DiegoOGS ma non si tratta di un problema di codifica caratteri speciali che arriva proprio dal backend? ( in questo caso Drupal stesso, non penso Bootstrap Italia c'entri qualcosa)

SvicoliNeiVicoli commented 8 months ago

Dà come è costruito l'elemento mi sembra sia un problema di Bootstrap Italia List, ho provato diverse configurazioni e il problema si presenta se viene usato il tag span , a me serve quel tipo di vista per le spaziature e l'elemento 'freccia' finale. Ho pensato di costruire il tipo di vista ma non saprei in che libreria inserirla.

zetareticoli commented 8 months ago

@DiegoOGS domanda banale: hai verificato che il default character sia UTF-8?

SvicoliNeiVicoli commented 8 months ago

Sisi ho controllato anche la versione di php e coincide

astagi commented 6 months ago

@DiegoOGS @Virtute90 @zetareticoli non riesco a riprodurre l’errore in nessun modo partendo da una semplice applicazione statica che utilizza Bootstrap Italia.

Virtute90 commented 6 months ago

@DiegoOGS @Virtute90 @zetareticoli non riesco a riprodurre l’errore in nessun modo partendo da una semplice applicazione statica che utilizza Bootstrap Italia.

Nemmeno io ho mai avuto problemi di questi genere

SvicoliNeiVicoli commented 6 months ago

Cattur2a Cattura Cattura1 Cattura3 Cattura4

La cosa mi capita con questa configurazione e in tutte le pagine, ho provato ad usare un altro modello (Card) che mette il testo nel tag e funziona.

Fupete commented 3 months ago

@DiegoOGS per aggiornamenti: hai risolto?

SvicoliNeiVicoli commented 3 months ago

No, il problema persiste. Qualche proposta??