RIMUOVERE IL BORDER="0" NEL RENDERING DI UNA ASP:IMAGE PER VALIDARE CORRETTAMENTE LA PAGINA CON IL W3C VALIDATOR


Quando si tenta di convalidare una pagina web con il W3C Markup Validation Service, nel punto in cui viene fatto il rendering di un <asp:Image> o di un <asp:ImageButton>, viene aggiunto un border="0" mostrando il messaggio di errore: there is no attribute "border"

<asp:Image ID="Image1" runat="server" ImageUrl="~/Images/img.jpg" width="350px" height="250px"/>
'genera un output di questo tipo
<img src="Images/img.jpg" height="250" width="350" border="0" /> 'Ove border="0" genera un errore quando si usa il W3C Validator
Una possibile soluzione è di aggiungere ClientTarget="uplevel" nella direttiva Page della web form.

<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" ClientTarget="uplevel" %>           

Il valore della proprietà ClientTarget è un alias del tipo di browser per il quale si desidera effettuare il rendering della pagina. Se si specifica uplevel, il rendering della pagina verrà effettuato con gli attributi di stile CSS anche per i browser delle versioni precedenti. Se viene specificato l'alias downlevel, il rendering della pagina sarà sempre compatibile con lo standard HTML 3.2, a prescindere dal browser che ha richiesto la pagina.
È possibile creare definizioni di browser personalizzate definendo alias aggiuntivi nei file Machine.config o Web.config (vedere articolo Il file di configurazione Web.config).
Per ulteriori informazioni sulla direttiva Page vedere l'articolo La direttiva Page delle pagine ASP.NET

Autore: Fabrizio De Odorico

TAGS: @Page, ASP.NET, Asp:Image, Asp:ImageButton, Border 0, ClientTarget, Direttiva page, Rendering, W3C, W3C Validator

Postato il 30/03/2013 | Invia ad un amico  |   Versione stampabile  |   Aggiungi ai preferiti  |   Visite: 1973  |   Contattami su whatsapp

Modulo Login


 


 

 

Vuoi offrirmi un caffè?

Se trovi utili i miei articoli o vuoi aiutarmi ad aggiungere altro materiale sul sito...

fai una Donazione

Terminologia

La piattaforma .Net è una suite di prodotti creata dalla Microsoft dove i vari linguaggi di programmazione sono orientati agli oggetti (da C# a Visual Basic a J#).
Il bytecode di .NET viene compilato al momento dell'esecuzione (just in time compilation) ed è compatibile con le sole piattaforme Windows.

Java è un linguaggio di programmazione orientato agli oggetti creato dalla Sun Microsystems.
Il bytecode, generato dalla compilazione, viene interpretato dalla Java Virtual Machine in fase di esecuzione. Per questo motivo le applicazioni java sono indipendenti dall'hardware sulle quali vengono eseguite.