Avatar billede krestian Nybegynder
22. oktober 2004 - 10:51 Der er 12 kommentarer og
1 løsning

Skifte mellem forskellige CSS

Hej alle

Jeg vil gerne have, at brugerne på mit site selv kan vælge hvilke farver de vil se sitet i.

Jeg styrer al layout/design via CSS.

Kan det lade sig gøre, at brugerne selv vælger, hvilket layout (CSS) de gerne vil bruge?

Og hvordan kan jeg lave det på mit site?

Jeg håber, at det er til at forstå!

Hilsen
Krestian
Avatar billede -padde- Nybegynder
22. oktober 2004 - 10:57 #1
Avatar billede krestian Nybegynder
22. oktober 2004 - 11:15 #2
>> -padde-

Det er "lækker" kode, men jeg vil gerne forsøge at skrive koden selv! Dit link er ellers lige i plet...

Jeg venter lige lidt for at se, om der komemr mere til mit spg.

/Krestian
Avatar billede -padde- Nybegynder
22. oktober 2004 - 11:17 #3
Avatar billede Slettet bruger
22. oktober 2004 - 13:45 #4
ellers kan du lave en knap
<a href="<?php echo $_SERVER['PHP_SELF'] ."css=sort"; ?>">skift css</a>
og så i din fil øverst
<?
$fil = _GET['css'] .".css";
?>

og derefter i din fil
<link href="<? echo $fil; ?>" rel="stylesheet" type="text/css">

dette kræver dog at du har php på din server!
Avatar billede roenving Novice
22. oktober 2004 - 14:19 #5
Du kan også sætte alle stylesheets ind men disable næsten alle ...

-- jeg kiggede ikke lige på linket, så måske er det samme metode !-)

<link rel="stylesheet" type="text/css" href="style/style0.css" />
<link rel="stylesheet" type="text/css" href="style/style1.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style2.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style3.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style4.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style5.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style6.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style7.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style8.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style9.css" disabled="disabled" />
<link rel="stylesheet" type="text/css" href="style/style10.css" disabled="disabled" />


-- lave en javascript-funktion, som disabler alle og enabler een:

<script type="text/javascript">
function changeStyleSheet(n){
  var ss = document.styleSheets;
  for(i=0;ss.length>i;i++){
    ss[i].disabled = true;
  }
  ss[n].disabled = false;
}
</script>

-- og en selectbox, som skifter:

<select name="styleChange" onchange="changeStyleSheet(this.value)">
  <option value="0">Default stylesheet</option>
  <option value="1">Alternativt stylesheet 1</option>
  <option value="2">Alternativt stylesheet 2</option>
  <option value="3">Alternativt stylesheet 3</option>
  <option value="4">Alternativt stylesheet 4</option>
  <option value="5">Alternativt stylesheet 5</option>
  <option value="6">Alternativt stylesheet 6</option>
  <option value="7">Alternativt stylesheet 7</option>
  <option value="8">Alternativt stylesheet 8</option>
  <option value="9">Alternativt stylesheet 9</option>
  <option value="10">Alternativt stylesheet 10</option>
</select>
Avatar billede roenving Novice
22. oktober 2004 - 14:22 #6
-- hvis du så vil have det til at være den samme hver gang en bruger kommer på fra en computer, kan der bruges en cookie, som aflæses ...

-- men hvis det skal følge brugeren uanset hvilken computer, hun logger på fra, skal der selvfølgelig laves noget, f.eks. i php eller asp eller .NET eller andet serverside med en database på !-)
Avatar billede nikolajdu Nybegynder
22. oktober 2004 - 14:22 #7
Det lyder smart, men tungt :))
Avatar billede roenving Novice
22. oktober 2004 - 15:17 #8
-- egentlig forbavsende velfungerende i det eneste eksempel, jeg har prøvet det på, men det er jo helt indlysende, at browseren nødvendigvis må genopbygge sit css-DOM-træ, med efterfølgende gen-rendering !-)
Avatar billede Slettet bruger
22. oktober 2004 - 18:25 #9
roenving: Virker det ikke ligesågodt (måske bedre), hvis du skriver

<link rel="alternate stylesheet" ...

Så kan for eksempel Firefox selv vælge et andet. (og med en extension kan valget gøres permanent).
Avatar billede olebole Juniormester
23. oktober 2004 - 00:32 #10
<ole>

En lille artikel om emnet:
    http://www.alistapart.com/articles/alternate/

/mvh
</bole>
Avatar billede krestian Nybegynder
26. oktober 2004 - 09:37 #11
Tak for alle de gode svar!

>> wicez : Jeg har brugt dit forslag. Smid et svar, så du kan få points.

/Krestian
Avatar billede Slettet bruger
26. oktober 2004 - 09:39 #12
Ok, har dog ikke prøvet det.. :P
Avatar billede krestian Nybegynder
26. oktober 2004 - 16:41 #13
>> wicez : Det virker fint. Jeg ville ikke lave det i en cookie, da jeg helst vil undgå at sætte cookies på mit site.

Du kan evt. tjekke min løsning på mit testsite på test.krestian.dk.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester