• <br> da errore

    Ho la pagina utf-8 HTML5 mi da questo errore

    **Element br not allowed as child of element ul in this context. (Suppressing further errors from this subtree.)

    Codice PHP:
    [LEFT]<ul style="list-style-type:disc">
    <li>testo1</li>
    <br>
    <li>testo2</li>
    </ul> [/LEFT]

    **


  • User Attivo

    Ti dice semplicemente che non è consentito un br dentro una lista. Usa i css per portare a capo, tipo float:left; clear:both;


  • @erise said:

    Ti dice semplicemente che non è consentito un br dentro una lista. Usa i css per portare a capo, tipo float:left; clear:both;

    A me serve creare spazio in verticale perché è il <li> stesso che porta a capo


  • User Attivo

    Il br corretto si scrive così: <br />
    Se devi per forza inserirlo, almeno chiudi ul.

    **[LEFT]<ul style="list-style-type:disc">
    <li>testo1</li>
    </ul>
    <br />
    <ul style="list-style-type:disc"> <br>
    <li>testo2</li>
    </ul>
    [/LEFT]
    **


  • @Far-Web said:

    Il br corretto si scrive così: <br />
    Se devi per forza inserirlo, almeno chiudi ul.

    **[LEFT]<ul style="list-style-type:disc">
    <li>testo1</li>
    </ul>
    <br />
    <ul style="list-style-type:disc"> <br>
    <li>testo2</li>
    </ul>
    [/LEFT]
    **

    Con HTML5 la barra inversa non serve, così <br>, tu ti riferisci a XHTML


  • User Attivo

    Io ho sempre utilizzato il <br />, anche perchè il w3c lo accetta nello standard html5. Prova allora a chiudere l'ul prima di inserirlo.


  • La soluzione di Far-Web ha inoltre un valore semantico non trascurabile.
    È dunque corretta sempre sintatticamente; mentre lo è anche semanticamente solo se quelle sono effettivamente due liste differenti.

    Se lo spazio che vuoi inserire è meramente estetico e non vuole separare i due elementi dal punto di vista semantico, forse dovresti ricorrere ad una soluzione basata su margini o padding degli elementi lista, usando quindi il CSS.


  • @puleddu said:

    La soluzione di Far-Web ha inoltre un valore semantico non trascurabile.
    È dunque corretta sempre sintatticamente; mentre lo è anche semanticamente solo se quelle sono effettivamente due liste differenti.

    Se lo spazio che vuoi inserire è meramente estetico e non vuole separare i due elementi dal punto di vista semantico, forse dovresti ricorrere ad una soluzione basata su margini o padding degli elementi lista, usando quindi il CSS.

    Ho risolto in modo semplice:

    [PHP]<ul style="list-style-type:disc">
    <li>Testo1</li>
    </ul>
    <ul style="list-style-type:disc">
    <li>Testo2</li>
    </ul>[/PHP]


  • Certo, la soluzione è funzionale. Ciò che intendevo dire è che se hai creato due ul solo per ricavarne uno spazio, questo non è corretto.
    Se invece si tratta, effettivamente, di due liste distinte, allora la soluzione è quella giusta.

    Non si tratterebbe più di immediatezza o semplicità, ma di correttezza del codice che ovviamente sarà valido, ma non semanticamente corretto.
    Ad ogni modo, se sei soddisfatto, va più che bene. 🙂


  • @puleddu said:

    Certo, la soluzione è funzionale. Ciò che intendevo dire è che se hai creato due ul solo per ricavarne uno spazio, questo non è corretto.
    Se invece si tratta, effettivamente, di due liste distinte, allora la soluzione è quella giusta.

    Non si tratterebbe più di immediatezza o semplicità, ma di correttezza del codice che ovviamente sarà valido, ma non semanticamente corretto.
    Ad ogni modo, se sei soddisfatto, va più che bene. 🙂

    Si, per creare spazio e non mi da errore, potrei anche mettere un <br> in mezzo in caso volessi più spazio

    [LEFT]<ul style="list-style-type:disc">
    <li>Testo1</li>
    </ul>
    <br>
    <ul style="list-style-type:disc">
    <li>Testo2</li>
    </ul> [/LEFT]


  • User

    @Apthu said:

    A me serve creare spazio in verticale perché è il <li> stesso che porta a capo

    Spazia verticalmente con i CSS, magari assegnando un id.
    Non puoi usare il br fra un item e l'altro 😉