2010-04-13 21 views
6

Questa è probabilmente una cosa molto semplice ma non riesco a vedere cosa! Tutte le immagini che ho in una pagina master non vengono visualizzate nelle pagine secondarie, tutto ciò che ottengo è la casella con la croce rossa in essa.immagini della pagina principale non visualizzate nelle pagine secondarie

Non penso di aver fatto qualcosa di diverso dal solito e non è qualcosa che è successo in altri siti quindi mi scrivo in testa con esso. Tutte le idee sono apprezzate!

risposta

19

Kevin ha l'essenza del problema giusto - il tuo URL nella tua pagina principale è probabilmente relativo alla posizione della pagina principale, e quando è incluso nella pagina figlio, il riferimento relativo non è correggi più La soluzione più semplice per questo tipo di cose è di avere gli URL della tua pagina principale relativi al sito, non alla pagina. In altre parole, se hai fatto

<img src="images/picture1.gif"> 

È necessario sostituire quello con

<img src="/images/picture1.gif"> 

o qualcosa di simile.

+0

Grazie, ha aiutato med :-) – Shaahin

1

L'URL della tua immagine non è corretto.

+0

l'id è stato trascinare l'immagine da Solution Explorer al modulo. Ho inserito un asp: immagine e impostare l'url, che ha fatto il trucco, grazie – DarkW1nter

0

Sembra proprio che tu abbia un problema di percorso. Visualizza l'origine della tua pagina di rendering e dai un'occhiata a dove si sta cercando di caricare l'immagine, che dovrebbe aiutarti a correggere il tuo percorso.

4

Hai dato l'immagine runat = "server" e usi un percorso "~ /" relativo al file?

1

Prova a utilizzare percorsi assoluti per le tue immagini.

Ho riscontrato questo problema durante l'utilizzo di un file master con pagine di contenuto in diverse sottodirectory. Se si utilizzano percorsi relativi alle immagini, ciò dovrebbe essere relativo alla pagina di contenuto, non al master.

Modifica: Questo è vero se si utilizza il tag img per visualizzare le immagini. asp:Image si comporta meglio =

8

nella pagina principale si utilizza l'immagine src simile alla riga sottostante e questo funzionerà. questo stesso problema ha risolto usig in questo modo.

src="<%= Page.ResolveUrl("~")%>Images/myimage.png" 
+0

Corretto. risolvere l'url in tutti i casi. – Rezoan

0

Se si imposta la strada giusta poi anche si stanno ottenendo lo stesso problema, allora si può provare questo sarà sicuramente risolvere il tuo problema:

Utilizzare punti doppi (..) prima della partenza di URL.

+0

Non è questo per referenziare le immagini in modo relativo? La convenzione ".." serve semplicemente per aumentare il livello di una cartella dalla pagina corrente. – Kristopher

0

Se le pagine di contenuto si trovano all'interno delle sottocartelle, si verifica questo problema. Quando viene visualizzata una pagina di contenuto, il markup viene generato nuovamente anche per il contenuto della pagina principale e la posizione di un'immagine può essere visualizzata in modo diverso come appare nella pagina principale. Il modo migliore è quello di sostituire con asp: controllo Image anziché HTML. Quindi definire l'assoluto iniziando con: ~/ nella posizione effettiva dell'immagine. Questo dovrebbe risolvere il problema. Rimuovi l'intero tag immagine prima di inserire asp:Image poiché gli attributi sono diversi per entrambi. Buona fortuna !!.

0

Se si utilizza image<img> tag al posto di questo, usate "style="background-image: url('/Images/welc.jpg');" in qualsiasi altro tag. Questo sembra uno sciocco. Ma funziona per me. Stavo anche ricevendo questo problema, dopo averlo usato da allora in poi ho ottenuto l'immagine su tutte le pagine di mio figlio.

Problemi correlati