webForumDet fria alternativet

Problem med MasterPage och bilder

.NETur .NET

7 svar · 445 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Det har uppståt ett problem för mig.
Jag bygger denna site runt en MasterPage. Mina bilder ligger i mappen Bild.
Närliggande sidor ligger i roten.
Håller nu på med en inloggning och skapar därför en ny mapp(Admin) och
där admin.aspx.
När jag nu har loggat in och kommit till admin.aspx då hänger inte bilderna
med som skall ligga i Masterpage.

 <img src="Bild/down.gif" height="80px" width="893px"/>   
//om jag försöker med
 <img src="~/Bild/down.gif" height="80px" width="893px"/>   
//då visas inte bilden alls vid något tillfälle

..förslag???

När det gäller de vanliga bilderna så är det ju

<img src="~/Bild/uppe.gif" runat="server" />

..men problemet är

<div  style="background-image: url(Bild/sfoni_majtas.gif); height:400px; 
width:892px" runat="server">

..här hjälper inte runat="server"

Medlem sedan feb. 2005280 inlägg
#2
<img src="/Bild/down.gif" height="80px" width="893px"/>
Medlem sedan jan. 20022 440 inlägg
#3

Kunde jag skulle jag markera ditt inlägg som lösningen freguz ;)

Medlem sedan mars 20011 880 inlägg
#4

Nix CatZ så enkelt var det inte, men den biten är löst som du kan se i mitt editerade
inlägg, men problemet ligger när man stylar med en bakgrundsbild.

Medlem sedan jan. 20022 440 inlägg
#5

Detta är väl mer ett CSS problem än något annat. Jag vet att det blir lite bekymmer med detta ibland i asp.net.

.divImageBackground
{
	background-image: url('Bild/sfoni_majtas.gif'); 
	height: 400px; 
	width: 892px
}

Sedan kan du ju ange en css class till din div istället med

<div class="divImageBackground">

Frågan är ju bara i vilken folder ligger sidan i förhållande till din bild? Det kan hända att du måste ange

.divImageBackground
{
	background-image: url('../Bild/sfoni_majtas.gif'); 
	height: 400px; 
	width: 892px
}

Css fattar inte absoluta sökvägar så bra tyvärr. Du måste alltid utgå från mappen som din sida laddas ifrån och om det behövs gå bakåt till root foldern och sedan vidare in till Bilder mappen.

Medlem sedan jan. 20022 440 inlägg
#6

Du kan också ange sökvägen till bilden såhär

background-image: url([url]http://www.dindomän.se/Bild/sfoni_majtas.gif);[/url]
Medlem sedan juli 2003465 inlägg
#7

Jag hade samma problem och löste det genom att jag la css:en i en css-fil och gjorde en funktion för sökvägar.

    Function GetPathToRoot() As String
        Dim p As String = ParentHttp.Request.Path
        Dim str As String = ""
        For i As Integer = 1 To CountChr(Left(p, Len(p) - InStr(StrReverse(p), "/")), "/")
            str = str & "../"
        Next
        Return str
    End Function

/Red

Public ParentHttp As HttpContext = System.Web.HttpContext.Current

Om du skall lägga funktionen i en class annars kan man bara använda "Request.Path"

Medlem sedan mars 20011 880 inlägg
#8

Tack för era förslag.

142 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)