Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Vaihtoehtoisia tyylisivuja?

Sivun loppuun

Rocceri [02.03.2009 19:31:40]

#

Tarttisin sellaisen koodin, jonka kanssa voisi vaihtaa sivun ulkoasu.
Vastaavan kuin http://habbotaivas.co.cc

Tietääkös kukaan miten tälläinen tehdään?

Tumettaja [02.03.2009 20:01:23]

#

PHP:lla vaikkapa näin:

<?php
	$tyyli = isset($_GET["tyyli"]) ? $_GET["tyyli"] : "oletus";
	echo "<link rel=\"stylesheet\" href=\"" . $_GET["tyyli"] . ".css\" type=\"text/css\" />";
?>

<a href="index.php?tyyli=toinen">Vaihda teemaa!</a>

Juhko [02.03.2009 20:14:50]

#

Mieluummin evästeillä.

Merri [02.03.2009 21:51:38]

#

Jos haluaa tehdä sellaisen systeemin, jossa ulkoasu vaihtuu saman tien lataamatta sivua uudelleen, niin yksi helpoimmista on tehdä yksi CSS-tiedosto ja vaihdella JavaScriptin voimin body-elementin ID-arvoa. CSS-tiedostossa on sitten juuri-ID:n kautta määritelty eriväriset tai -muotoiset teemat. Toki PHP:n avuin kannattaa tarjota toimivuus myös JS-tuen puuttumisen varalta, ja PHP:n kautta saa paremmin hoidettua oikean tyylin valinnan per sivunlataus.

GimPeltzi [03.03.2009 08:44:33]

#

Headeriin määritykset:

<link rel="stylesheet" ... />
<link rel="alternate stylesheet" ... />

Painikkseeseen:

onClick="setActiveStyleSheet('nimitys');

Alternate stylesheet -linkkitagi mahdollistaa myös tyylin vaihtamisen selaimen Näytä -valikosta (paitsi IE:llä muistaakseni). En tosin ole ihan varma, kuinka tämä asetus säilyy, eli vaihtuuko tyyli takaisin heti seuraavalla sivunlatauksella. Kellään infoa tästä?

Lebe80 [03.03.2009 09:53:39]

#

GimPeltzi kirjoitti:

En tosin ole ihan varma, kuinka tämä asetus säilyy, eli vaihtuuko tyyli takaisin heti seuraavalla sivunlatauksella. Kellään infoa tästä?

Loogisesti ajateltuna tyylit eivät säilyisi sivulatausten välillä.

GimPeltzi [03.03.2009 10:18:23]

#

Lebe80 kirjoitti:

GimPeltzi kirjoitti:

En tosin ole ihan varma, kuinka tämä asetus säilyy, eli vaihtuuko tyyli takaisin heti seuraavalla sivunlatauksella. Kellään infoa tästä?

Loogisesti ajateltuna tyylit eivät säilyisi sivulatausten välillä.

Mjoo mut oon nähnyt sivuja, joissa se asetus säilyy. Näköjään tuo aloitusviestissä mainittu sivu edustaa juuri tätä sarjaa. Mitenköhän tämä on käytännössä toteutettu?

Lebe80 [03.03.2009 15:54:57]

#

olikohan toteutettu evästeillä ja palvelinpään ohjelmoinnilla.

kinnala [03.03.2009 19:01:27]

#

Jos pelkällä javascriptillä haluaa ton keksitallennuksen tehdä, niin onnistuu vaikka näillä funktioilla:

function changeStyle(name)
{
	var tmp = document.getElementsByTagName('link')[0].href = name+".css";
	document.cookie = "style="+name;
}

function getCookie()
{
	var tmp = document.cookie.split('=');
	var tmp = document.getElementsByTagName('link')[0].href = tmp[1]+".css";
}

Sitten vielä lisäksi linkkeihin

<a href="#" onclick="changeStyle('tyyli1')">tyyli1</a>

ja bodyyn

<body onload="getCookie()">

Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta