di: Gianni Marzaloni 12 Dicembre 2007
Con l'avvento delle nuove regole dettate dalla W3C riguardo alla scrittura del codice XHTML, anche il Framework si è adeguato e già il passaggio dalla versione 1.x alla 2.0 ha segnato notevoli miglioramenti sulla compatibilità del codice generato.
Ad oggi, è possibile dire che la maggior parte dei controlli lato server .NET sono standard XHTML 1.0 e XHTML 1.1 previa qualche piccola considerazione che andremo ad approfondire nel corso di questo articolo.
Prima di iniziare però una precisazione: il fatto che i controlli siano al 100% compatibili XHTML 1.0 Transitional ma non XHTML 1.0 Strict e XHTML 1.1 non vuol dire che casa Microsoft abbia "fatto male le cose", anzi, la non conformità del codice è dettata da una retro compatibilità, offerta dal Framework, che dà la possibilità, a chi possiede vecchie versioni di browser, di utilizzare le nostre applicazioni Web senza problemi. Si tratta quindi solo di una configurazione di default, che può essere cambiata a proprio piacimento ed in ogni momento.
Ma quali sono i passi da fare per rendere compatibile il codice prodotto dai nostri controlli server? Il Framework mette a disposizione uno strumento veloce ed efficace, che vedremo in seguito, ma è necessario valutare il comportamento di alcuni controlli prima di proseguire.
Ipotizziamo di voler standardizzare il nostro codice alla versione XHTML1.0 Strict, in questo caso il primo controllo a darci dei problemi sarebbe il tag form onnipresente nelle pagine ASPX:
| Codice sorgente pagina ASPX | Codice XHTML in output |
|---|---|
<form id="form1" runat="server">
|
<form name="form1" method="post" action="Default.aspx" id="form1">
|
Una volta richiesta la pagina mediante browser, il codice fornito dal Framework contiene l'attributo name, non esistente per il tag <form>.
Assicuriamoci di impostare sempre la proprietà AlternateText per il controllo Image. Se non popolata, nel codice risultante sarà omesso l'attributo alt, e quindi non conforme alle specifiche:
| Codice sorgente pagina ASPX | Codice XHTML in output |
|---|---|
<asp:Image ID="Image1" runat="server" ImageUrl="immagine.jpg" />
|
<img id="Image1" src="imagine.jpg" />
|
Allo stesso modo ragiona la proprietà ImageUrl del controllo Image. L'attributo src è obbligatorio per il tag <img> e se non valorizziamo ImageUrl il tag non verrà considerato conforme. Mentre è necessario non utilizzare la proprietà ImageAlign perché genera un attributo align in fase di rendering.
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200820 Febbraio 2012 a Milano |
|
Nessun corso previsto |