Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Choix de feuille de style par l'utilisateur ?

0 views
Skip to first unread message

kurtbosh

unread,
Dec 14, 2009, 12:32:51 PM12/14/09
to
Bonsoir,

J'aimerais savoir comment est-il possible de donner le choix au
lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
"Fond noir" ou "Fond blanc" mais cela oblige à avoir deux fois la même
page avec juste les feuilles de style (externes) qui changent. Pour la
maintenance ce n'est pas top...

Je crois avoir vu quelque chose là dessus mais je sais plus où ?

Merci et bonne soirée.

Guy

SAM

unread,
Dec 14, 2009, 1:05:44 PM12/14/09
to
Le 12/14/09 6:32 PM, kurtbosh a �crit :

> Bonsoir,
>
> J'aimerais savoir comment est-il possible de donner le choix au
> lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
> "Fond noir" ou "Fond blanc" mais cela oblige � avoir deux fois la m�me

> page avec juste les feuilles de style (externes) qui changent. Pour la
> maintenance ce n'est pas top...
>
> Je crois avoir vu quelque chose l� dessus mais je sais plus o� ?

par quelle m�thode ?
PHP ?
Javascript ? (j'ai en stock et n'ai plus la provenance)

sinon il y a les FdS alternatives, mais je ne vois pas beaucoup de
brouteurs qui sachent les exploiter...
(iCab par exemple, et encore ? pas certain qu'il ne faille � chaque page
re-pr�ciser laquelle on aime)

google : style switcher

--
sm

Sergio

unread,
Dec 14, 2009, 1:07:15 PM12/14/09
to
kurtbosh a �crit :

> Bonsoir,
>
> J'aimerais savoir comment est-il possible de donner le choix au
> lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
> "Fond noir" ou "Fond blanc" mais cela oblige � avoir deux fois la m�me

> page avec juste les feuilles de style (externes) qui changent. Pour la
> maintenance ce n'est pas top...
>
> Je crois avoir vu quelque chose l� dessus mais je sais plus o� ?

Un petit script PHP ou Javascript fera l'affaire...

Exemple en php :
---------------------------------------------------------
<?php // au d�but
$moi=$_SERVER['PHP_SELF'] ; // nom de la page

$set=$_GET['set'] ;
if($set!=2 && $set!=1) /* ici deux choix possibles */
{
$set=$_COOKIE['set'] ;
if ($set!=2) $set=1 ;
}
?>
<html>
<head>
<!-- ........ -->
<link rel="<?php if ($set!=1) echo 'alternate ' ?>stylesheet" type="text/css" media="screen" href="feuille1.css" title="normal">
<link rel="<?php if ($set!=2) echo 'alternate ' ?>stylesheet" type="text/css" media="screen" href="feuille2.css" title="alternatif">
<!-- ........ -->
</head>
<body>
<!-- ........ -->
<form action="<?php echo $moi ?>" method="get" id="switcher">
Choisir un habillage&thinsp;:
<select id="set" name="set">
<option value="1" <?php if ($set==1) echo 'selected="selected" ' ?>>Normal</option>
<option value="2" <?php if ($set==2) echo 'selected="selected" ' ?>>Alternatif</option>
</select>
<input type="submit" value="Ok"> <small>(ce choix n�influera aucunement sur l'impression)</small>
</form>

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org

Sergio

unread,
Dec 14, 2009, 1:12:10 PM12/14/09
to
Sergio a �crit :

> kurtbosh a �crit :
>> Bonsoir,
>>
>> J'aimerais savoir comment est-il possible de donner le choix au
>> lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
>> "Fond noir" ou "Fond blanc" mais cela oblige � avoir deux fois la m�me
>> page avec juste les feuilles de style (externes) qui changent. Pour la
>> maintenance ce n'est pas top...
>>
>> Je crois avoir vu quelque chose l� dessus mais je sais plus o� ?
>
> Un petit script PHP ou Javascript fera l'affaire...
>
> Exemple en php :

Et m�me sans PHP (ou javascript)...

Avec:
<link rel="stylesheet" type="text/css" media="screen" href="feuille1.css" title="normal">
<link rel="alternate stylesheet" type="text/css" media="screen" href="feuille2.css" title="alternatif">

Dans Firefox ou Opera, le menu "affichage/Style" permet de choisir la feuille de style.

kurtbosh

unread,
Dec 14, 2009, 1:46:09 PM12/14/09
to
Merci pour vos réponses !

Je préfèrerais en JS si c'est possible ?

Je ne suis pas certain que les utilisateurs connaissent l'existence de
l'option d'affichage que tu cites...

Guy

SAM

unread,
Dec 14, 2009, 1:51:21 PM12/14/09
to
Le 12/14/09 7:07 PM, Sergio a �crit :

> kurtbosh a �crit :
>> Bonsoir,
>>
>> J'aimerais savoir comment est-il possible de donner le choix au
>> lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
>> "Fond noir" ou "Fond blanc" mais cela oblige � avoir deux fois la m�me
>> page avec juste les feuilles de style (externes) qui changent. Pour la
>> maintenance ce n'est pas top...
>
> Un petit script PHP ou Javascript fera l'affaire...
>
> Exemple en php :
> ---------------------------------------------------------
> <?php // au d�but
> $moi=$_SERVER['PHP_SELF'] ; // nom de la page

Oi, mais l�, �a ne fonctionne que pour "cette" page
(et � condition qu'elle ait le form kivabien)
non ?

--
sm

SAM

unread,
Dec 14, 2009, 2:05:00 PM12/14/09
to
Le 12/14/09 7:46 PM, kurtbosh a 锟絚rit :
> Merci pour vos r锟絧onses !
>
> Je pr锟絝锟絩erais en JS si c'est possible ?

>
> Je ne suis pas certain que les utilisateurs connaissent l'existence de
> l'option d'affichage que tu cites...

En JS il suffit de faire changer entre les diff锟絩entes FdS

<link rel="stylesheet" type="text/css" href="/css/styles.css"
title="Defaut">

<link rel="alternate stylesheet" type="text/css" href="/css/bleu.css"
title="Bleu">
<link rel="alternate stylesheet" type="text/css" href="/css/jaune.css"
title="Jaune">

<script type="text/javascript">
function setActiveStyleSheet(title) {
var i, a;
for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
if(a.getAttribute("rel").indexOf("style") != -1
&& a.getAttribute("title")) {
a.disabled = true;
if(a.getAttribute("title") == title) a.disabled = false;
}
}
}
</script>

</head><body>

<p>Changer de style :
<br>
<a href="#" onclick="setActiveStyleSheet('Defaut'); return false;">
normal</a>
<br>
<a href="#" onclick="setActiveStyleSheet('Bleu'); return false;"> bleu</a>
<br><a href="#" onclick="setActiveStyleSheet('Jaune'); return
false;"> jaune</a>
</p>

Mais toujours pas pour toutes les pages
(il faudra alors se servir des cookies)

--
sm

kurtbosh

unread,
Dec 14, 2009, 2:13:37 PM12/14/09
to
On 14 déc, 20:05, SAM <stephanemoriaux.NoAd...@wanadoo.fr.invalid>
wrote:
> Le 12/14/09 7:46 PM, kurtbosh a écrit :

>
> > Merci pour vos réponses !
>
> > Je préfèrerais en JS si c'est possible ?

>
> > Je ne suis pas certain que les utilisateurs connaissent l'existence de
> > l'option d'affichage que tu cites...
>
> En JS il suffit de faire changer entre les différentes FdS

Cela me plait bien ta solution car ce sera du page par page.

Merci !

Guy

SAM

unread,
Dec 14, 2009, 4:41:53 PM12/14/09
to
Le 12/14/09 8:13 PM, kurtbosh a �crit :
> On 14 d�c, 20:05, SAM <stephanemoriaux.NoAd...@wanadoo.fr.invalid>
> wrote:
>> Le 12/14/09 7:46 PM, kurtbosh a �crit :
>>
>>> Je pr�f�rerais en JS si c'est possible ?

>> En JS il suffit de faire changer entre les diff�rentes FdS


>
> Cela me plait bien ta solution car ce sera du page par page.
>
> Merci !

De rien,
une once de Google t'aurait donn� la m�me exacte fonction
(je l'ai vue apr�s) comme ici :
<http://my.opera.com/Groumphy/blog/index.dml/tag/styleswitcher>
(il a d� copier la m�me source que moi, � croire ?)

Il est pr�f�rable aussi d'essayer d'avoir une FdS de base
et que celles 'bleu' et 'jaune' et peut-�tre 'defaut'
ne contiennent que le minima personnalisant la FdS principale
(afin de minimiser les chargements), �viter les redites de l'une � l'autre.

--
sm

Sergio

unread,
Dec 15, 2009, 4:21:24 AM12/15/09
to
SAM a �crit :

>> Un petit script PHP ou Javascript fera l'affaire...
>>
>> Exemple en php :
>> ---------------------------------------------------------
>> <?php // au d�but
>> $moi=$_SERVER['PHP_SELF'] ; // nom de la page
>
> Oi, mais l�, �a ne fonctionne que pour "cette" page
> (et � condition qu'elle ait le form kivabien)
> non ?

Ben, le FORM il est plus loin... dans la m�me page.
J'avoue avoir copi� d'une de mes pages...

SAM

unread,
Dec 15, 2009, 4:45:21 AM12/15/09
to
Le 12/15/09 10:21 AM, Sergio a �crit :

> SAM a �crit :
>
>>> Un petit script PHP ou Javascript fera l'affaire...
>>>
>>> Exemple en php :
>>> ---------------------------------------------------------
>>> <?php // au d�but
>>> $moi=$_SERVER['PHP_SELF'] ; // nom de la page
>>
>> Oui, mais l�, �a ne fonctionne que pour "cette" page

>> (et � condition qu'elle ait le form kivabien)
>> non ?
>
> Ben, le FORM il est plus loin... dans la m�me page.

Oui, oui, j'avais vu ;-)

> J'avoue avoir copi� d'une de mes pages...

As I did pour mon exemple en JS (le copi�-coll� c'est qd mme + s�r)

Ma question porte plus vers le d�veloppement : toutes pages

En JS on s'appuie sur les cookies pour que chaque nouvelle page charg�e
puisse connaitre les pr�f�rences de l'utilisateur,
en PHP, j'imagine qu'on doit pouvoir faire de m�me
ou mieux : via sessions ? <-- l� est mon interrogation.

--
sm

Sergio

unread,
Dec 15, 2009, 5:04:41 AM12/15/09
to
SAM a �crit :

>> Ben, le FORM il est plus loin... dans la m�me page.
>
> Oui, oui, j'avais vu ;-)
>
>> J'avoue avoir copi� d'une de mes pages...
>
> As I did pour mon exemple en JS (le copi�-coll� c'est qd mme + s�r)
>
> Ma question porte plus vers le d�veloppement : toutes pages
>
> En JS on s'appuie sur les cookies pour que chaque nouvelle page charg�e
> puisse connaitre les pr�f�rences de l'utilisateur,
> en PHP, j'imagine qu'on doit pouvoir faire de m�me
> ou mieux : via sessions ? <-- l� est mon interrogation.

J'ai fait via cookies...

kurtz le pirate

unread,
Dec 19, 2009, 4:02:31 AM12/19/09
to
In article
<c32b8ee9-a03b-4ab7...@j4g2000yqe.googlegroups.com>,
kurtbosh <kurt...@gmail.com> wrote:

> Bonsoir,
>
> J'aimerais savoir comment est-il possible de donner le choix au
> lecteur entre deux feuilles de style. Bien sur je peux mettre un lien

> "Fond noir" ou "Fond blanc" mais cela oblige � avoir deux fois la m�me

> page avec juste les feuilles de style (externes) qui changent. Pour la
> maintenance ce n'est pas top...
>

> Je crois avoir vu quelque chose l� dessus mais je sais plus o� ?
>
> Merci et bonne soir�e.
>
> Guy

rien de plus facile.

regarde la :

http://www.codelifter.com/main/javascript/changestylesPop.html

http://www.codelifter.com/main/javascript/changestyles.html

--
klp

kurtbosh

unread,
Dec 19, 2009, 2:27:08 PM12/19/09
to
On 19 déc, 10:02, kurtz le pirate <kurtzlepir...@yahoo.fr> wrote:
> In article
> <c32b8ee9-a03b-4ab7-8459-399a38550...@j4g2000yqe.googlegroups.com>,

>
>  kurtbosh <kurtb...@gmail.com> wrote:
> > Bonsoir,
>
> > J'aimerais savoir comment est-il possible de donner le choix au
> > lecteur entre deux feuilles de style. Bien sur je peux mettre un lien
> > "Fond noir" ou "Fond blanc" mais cela oblige à avoir deux fois la même
> > page avec juste les feuilles de style (externes) qui changent. Pour la
> > maintenance ce n'est pas top...
>
> > Je crois avoir vu quelque chose là dessus mais je sais plus où ?
>
> > Merci et bonne soirée.
>

Merci.

J'ai une solution donnée ici en JS :

http://www.grenault.net/nb.htm

0 new messages