webForumDet fria alternativet

Css mallar och färgtema

ASPur ASP

9 svar · 715 visningar · startad av boilwater

Medlem sedan juni 200476 inlägg
Frågan#1

Hej! Jag har byggt min hemsida genom en css mall och undrar om man kan göra flera mallar och så låta användarna själv välja färgtema på hemsidan?

Hur ser i så fall koden ut för att "anropa" rätt mall när man vill ändra temat?
Jag använder mig av asp sidor.

Visste inte vart jag skulle lägga denna posten (css eller asp), så jag ber om ursäkt om detta är fel ställe!

Medlem sedan dec. 2003209 inlägg
#2

Skapa en sida default.asp med koden nedan:

<html>
<head>
  <title></title>

<link rel="stylesheet" href="css/<%=Request.Cookies("farg") %>.css" type="text/css">
</head>

<% If Request.Cookies("farg") = "" Then
      Response.Cookies("farg")= "bla"
Else
   If Request.Querystring("val") = "bla" Then
      Response.Cookies("farg")= "bla"
   ElseIf Request.Querystring("val") = "gron" Then
      Response.Cookies("farg")= "gron"
   End If
      Response.Cookies("farg").Expires = DateAdd("yyyy",1,Date)
End If%>

<body>

<a href="default.asp?val=bla">BLÅ</a>   
<a href="default.asp?val=gron">GRÖN</a>

</body>
</html>

sen skapar du sidan bla.css med följande kod:

BODY {
     background-color: #4210C6;
     }

och sidan gron.css med följande kod:

BODY {
     background-color: #146C8A;
     }

css filerna lägger du i en mapp som du döper till css om du vill följa mitt exempel.

Hoppas det hjälpte
/S

Medlem sedan juni 200476 inlägg
#3

Takk! Men det funkar sådär.. När man kommer in första gången på sidan så anropas ingen cookie så hela sidan ser konstig ut (eftersom hela designet är uppbyggd i css). Sen när jag väljer "Blå" eller "Grön" kommer designet fram. Om jag vill ändra till den andra färgen som inte är vald, måste jag trycka två gånger på länken för att det skall byta färg.. "blå" tema kommer fram vid första besök, om man trycker uppdatera sidan en gång, så det är samma problem som med länkarna.

Medlem sedan juni 20019 519 inlägg
#4

Du måste lägga If Request.Cookies("farg") = "" Then
Response.Cookies("farg")= "bla" före själva css filen:

<html>
<head>
  <title></title>

<% If Request.Cookies("farg") = "" Then
      Response.Cookies("farg")= "bla"
Else
   If Request.Querystring("val") = "bla" Then
      Response.Cookies("farg")= "bla"
   ElseIf Request.Querystring("val") = "gron" Then
      Response.Cookies("farg")= "gron"
   End If
      Response.Cookies("farg").Expires = DateAdd("yyyy",1,Date)
End If%>

<link rel="stylesheet" href="css/<%=Request.Cookies("farg") %>.css" type="text/css">
</head>

<body>

<a href="default.asp?val=bla">BLÅ</a>   
<a href="default.asp?val=gron">GRÖN</a>

</body>
</html>
Medlem sedan juni 200476 inlägg
#5

Great! Det fungade!
Nu en liten följdfråga: Hur ser koden ut om jag vill länka till en css fil til? Jag har en css fil med textformateringar i en sep. fil nämligen.

Medlem sedan juni 20019 519 inlägg
#6

lägg bara till en elseif sats till... eller ännu bättre en Case sats.

Medlem sedan juni 200476 inlägg
#7

Hmm... Elseif? men det skal anropas två st. css filer samtidigt (en för layouten och en för texten), funkar det då med elseif sats? Är inte helt hundra på vad som menas med case sats?

Medlem sedan dec. 2003209 inlägg
#8

Haha sorry missade att jag skrev ASP kodenpå fel ställe, det var riktigt klantigt av mig men det löste sig ju i alla fall ;)

/S

Medlem sedan dec. 2003209 inlägg
#9

Så här kanske??

<html>
<head>
  <title></title>

<% If Request.Cookies("farg") = "" Then
      Response.Cookies("farg")= "bla"
      Response.Cookies("text")= "blatext"
Else
   If Request.Querystring("val") = "bla" Then
      Response.Cookies("farg")= "bla"
      Response.Cookies("text")= "blatext"
   ElseIf Request.Querystring("val") = "gron" Then
      Response.Cookies("farg")= "gron"
      Response.Cookies("text")= "grontext"
   End If
      Response.Cookies("farg").Expires = DateAdd("yyyy",1,Date)
End If%>

<link rel="stylesheet" href="css/<%=Request.Cookies("farg") %>.css" type="text/css">
<link rel="stylesheet" href="css/<%=Request.Cookies("text") %>.css" type="text/css">
</head>

<body>

<a href="default.asp?val=bla">BLÅ</a>   
<a href="default.asp?val=gron">GRÖN</a>

</body>
</html>

/S

Medlem sedan juni 200476 inlägg
#10

GÖTT mos!! Vad kul, tack så jättemycket för er hjälp! :D

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