Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [pillola] scrivere in XHTML

    Alcuni punti essenziali:

    1. MIME Type

    XHTML 1.0 dovrebbe essere servito come application/xhtml+xml.
    XHTML 1.1 deve essere servito come application/xhtml+xml.
    Per ottenere questo non basta specificare tale tipo MIME nell'elemento
    meta. Occorre che le pagine abbiano estensione .xht o.xhtml.
    Attualmente tutti i maggiori hoster lo supportano. Tuttavia, non tutti
    gli hoster permettono l'indexing con queste estensioni. In altre parole,
    spesso non si può associare ad una directory un file index.xht
    o index.xhtml.

    2. Browser
    I browser riconoscono i file serviti come al punto 1 come veri e propri
    file XML e verificano che il file sia ben formato. In caso contrario restituiscono
    un parsing error (pagina di errore).
    I browser non hanno parser validanti.
    Per validare un documento occorre usare il validatore del W3C.

    3. Prologo XML
    Se i documenti vengono serviti come al punto 1, il prologo XML dovrebbe essere
    incluso in ogni documento.

    4. Script e stili incorporati
    Se i vostri script e i vostri fogli di stile incorporati contengono i caratteri
    [>"<] devono essere inclusi in speciali sezioni CDATA, se
    e solo se servite i vostri documenti come al punto 1. Per informazioni, consultare
    le specifiche XHTML 1.0. Si noti che i commenti SGML posti all'interno di un elemento
    style fanno si che gli stili vengano ignorati dai browser, ma solo se servite i vostri
    documenti come al punto 1.

    5. Tutti i caratteri speciali devono essere codificati come entità SGML, compresi gli
    & negli URL. Prestate attenzione quando copiate contenuto da documenti formattati
    (come file .doc), perchè a volte gli editor (come Word) inseriscono dei caratteri
    che vengono riconosciuti dal validatore come *non* SGML.


    6. Link di riferimento

    http://xhtml.com/

    Fondamentale sito su XHTML che ne illustra i dettagli.

    http://www.zvon.org/xxl/xhtmlReference/Output/

    Guida completa agli elementi XHTML, utile soprattutto per verrificare il corretto
    annidamento e rapporto di parentela.

    http://www.alanwood.net/unicode/

    Ottima risorsa sui diversi tipi di caratteri.

    http://www.css-zibaldone.com/traduzioni/rfc3236/

    Il mime type application/xhtml+xml

    http://www.css-zibaldone.com/traduzioni/doctype/

    Articolo di Henri Sivonen sul Doctype Switch

    http://www.css-zibaldone.com/traduzioni/xhtml-dannoso/

    Articolo di Ian Hickson che spiega le differenze tra l'XHTML servito come text/html
    e quello servito come application/xhtml+xml

  2. #2
    Aggiungerei un paio di noticine:
    Internet Explorer non riesce a gestire i documenti application/xhtml+xml
    Firefox ha un bug non risolto che impedisce, sempre se il documento è servito in maniera corretta, il concatenamento XML per cui niente Ajax et similia.
    Nelle specifiche XHTML i commenti sono commenti a tutti gli effetti per cui commentare il contenuto di uno scripto di uno stile inline con "" fa sì che lo script non venga eseguito e lo stile non venga applicato.

  3. #3
    Originariamente inviato da H5N1_Aviaria
    Firefox ha un bug non risolto che impedisce, sempre se il documento è servito in maniera corretta, il concatenamento XML per cui niente Ajax et similia.
    L'ho sentita spesso sta cosa ma posso tranquillamente affermare che è FALSA. Sviluppo continuamente applicazioni web che vengono servite come application/xhtml+xml sui browser standard e text/html su IE ed AJAX funziona alla perfezione.

    Ovviamente non possiamo usare document.write. Tutte le manipolazioni devono essere eseguite tramite il DOM. Se con AJAX ci colleghiamo a un webservice o comunque a un URL che ci restituisce dei dati in XML, possiamo leggerli col DOM e sempre col DOM costruire i nostri tag HTML contenenti i valori dall'XML.

    Oppure molto più semplicemente trasformare l'XML con un file XSLT (che è la soluzione che adotto io normalmente).

    Se servono chiarimenti o esempi sono a disposizione.
    Sgro - Webmaster, programmazione c# e progettazione database.
    Non si forniscono soluzioni in privato.
    Non si fornisce la "pappa pronta".

  4. #4
    Alcune limitazioni del browser Gecko sono deducibili da quanto riportato nel link seguente:
    http://www.mozilla.org/docs/web-deve...aq.html#accept

  5. #5
    Conosco bene quella documentazione, ma non c'è scritto da nessuna parte che AJAX non funziona, in quanto non è vero. AJAX funziona alla perfezione se utilizzato col DOM. C'è invece scritto (come ho detto io) che document.write() non è supportato, ed è ovvio in quanto essendo il documento parsato come XML non ci si può scrivere all'interno come se fosse testo normale.
    Sgro - Webmaster, programmazione c# e progettazione database.
    Non si forniscono soluzioni in privato.
    Non si fornisce la "pappa pronta".

  6. #6
    Il problema è un altro, a mio avviso.
    Ovvio che non sto parlando per chi è esperto, ma magari per chi fa affidamento a librerie di terzi che, piuttosto che utilizzare il responseXML usano il responseText che può causare Exception in un documento così servito.
    Oltretutto è vero anche che utilizzando funzioni DOM standrd come il createElement e il createTextNode non si hanno problemi mentre si possono avere utilizzando l'innerHTML che, ricordo, non è una funzione standard (anche se ne è stata proposta la standardizzazionre) e che in un documento XML è inoltre ideologicamente scorretto.

  7. #7
    Stiamo sostanzialmente dicendo la stessa cosa. document.write(), responseText e innerHTML non si possono usare su documenti XML in quanto non è possibile scrivere liberamente in un documento XML dato che se ne potrebbe rovinare la well-formedness, senza la quale il documento non sarebbe più un XML.

    Usando responseXML e le funzioni del DOM si può risolvere il tutto, ma diventa abbastanza macchinoso. A mio avviso è di gran lunga consigliabile formattare il responseXML con un foglio di stile XSLT e appenderlo alla pagina tramite il DOM. Rende il tutto più scalabile e riutilizzabile, si scrive molto meno codice, ed inoltre XML e XSLT possono venire usati anche al di fuori del contesto javascript.
    Sgro - Webmaster, programmazione c# e progettazione database.
    Non si forniscono soluzioni in privato.
    Non si fornisce la "pappa pronta".

  8. #8
    Non ho detto il contrario ^^
    L'uso del responseText è molto più diffuso del responseXML (perchè più rapido da utilizzare) purtroppo.
    Il problema è sempre il solito: per adeguarsi agli standard bisogna tener conto di come questi vengano inerpretati dai vari browser.
    Spesso noto che Firefox, Opera e Safari vengono definiti come "W3C compliant" mentre siamo ben lungi dall'avere un'aderenza almeno sufficiente ad essi.
    Ogni browser ha le proprie limitazioni e interpretazioni sebbene molto sia stato fatto negli ultimi anni.
    Al di la di ogni digressione teorica e filosofica (ben vengano, per carità!) sono contrario ai "ritocchi" necessari per far funzionare un documento su tutti i browser sebbene sia il primo a farne ricorso.
    Utilizzare un application/xhtml+xml in una vera applicazione web (XHTML + MathML + SVG) e renderla accessibile a tutti i browser è una cosa tutt'altro che fattibile.
    Al momento utilizzo la tecnica che sovrascrive l'header del documento servendolo come application/xhtml+xml per tutti i browser tranne IE e Firefox.
    Mi rendo conto che in tal modo il documento viene trattato come una zuppa di tag e non come un vero documento XML, ma le modifiche da apportare al mio lavoro sono maggiori dei benefici che ne trarrei.
    In ogni caso i documenti sono validi e, difatti, in Opera non ho problemi

  9. #9
    Utente di HTML.it L'avatar di Alberto
    Registrato dal
    Oct 2004
    Messaggi
    1,870

    Re: [pillola] scrivere in XHTML

    Originariamente inviato da thomas_anderson
    Alcuni punti essenziali:

    1. MIME Type

    XHTML 1.0 dovrebbe essere servito come application/xhtml+xml.
    XHTML 1.1 deve essere servito come application/xhtml+xml.
    Per ottenere questo non basta specificare tale tipo MIME nell'elemento
    meta. Occorre che le pagine abbiano estensione .xht o.xhtml.
    Attualmente tutti i maggiori hoster lo supportano. Tuttavia, non tutti
    gli hoster permettono l'indexing con queste estensioni. In altre parole,
    spesso non si può associare ad una directory un file index.xht
    o index.xhtml.
    io programmo in php ed ovviamente le mie pagine hanno estensione .php, se non basta specificare il tipo MIME, ma bisogna dargli estensione .xht o .xhtml come faccio a scrivere in xhtml anche le pagine .php?

  10. #10
    Originariamente inviato da H5N1_Aviaria
    Al momento utilizzo la tecnica che sovrascrive l'header del documento servendolo come application/xhtml+xml per tutti i browser tranne IE e Firefox.
    Pure io, ma escludo solo IE. Con firefox non ci sono problemi. Come mai tu invece escludi pure firefox? E usare resposeXML non è un adattarsi alle necessità dei browser. E' responseText che è di vecchia concezione e inadatto all'xhtml.
    Sgro - Webmaster, programmazione c# e progettazione database.
    Non si forniscono soluzioni in privato.
    Non si fornisce la "pappa pronta".

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.