|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||||||
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Je ne sais pas si un style switcher a déjà été proposé, mais je porpose le mien que je viens de créer vite fait :
http://josselin.willette.free.fr/cod...styleswitcher/ L'utilisation de Javascript et non pas d'un langage serveur pour switchter les styles permet d'éviter le rechargement de la page. J'ai mis en place un système de cookie qui permet de retrouver le style choisi à la prochaine reconnexion (ainsi qu'au rechargement de la page étant donné que rien n'est géré côté serveur Code html :
Code :
Code html :
Suggestions ? Améliorations ? |
||||||
|
|
00
|
|
|
#2 | ||||
|
Expert Confirmé
![]() ![]() |
Moi je suis plutot partisant de ceci :
Code :
Code :
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
||||
|
|
00
|
|
|
#3 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Ta solution implique une seule feuille de style, ce qui peut être gérable pour les petits sites qui ne proposent que deux choix de couleur, mais vite bordélique si on veut passer à 3, 4 voire 5 couleurs et encore plus un sur gros site.
Après évidemment c'est un choix de programmation comme un autre et je conçois que certains s'y retrouveront mieux avec une seule feuille de style. ^^ |
|
|
00
|
|
|
#4 | ||||
|
Expert Confirmé
![]() ![]() |
Ben pas du tout, je peux avoir autant de feuille de style que je veux
green.css Code :
Code :
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
||||
|
|
00
|
|
|
#5 |
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Ah, oui, je vois ce que tu veux dire.
Tu fais comme moi au début, tu charges toutes les feuilles de style, mais ta méthode a l'avantage de ne pas modifier le lien de la dernière feuille de style et donc permet de les déclarer n'importe comment sans une rigueur définie. J'aime bien, je regarderai ça. |
|
|
00
|
|
|
#6 | ||||||||||
![]() ![]() Josselin Développeur Web Inscription : janvier 2004 Messages : 9 050 ![]() |
Hop, voilà j'ai modifié à la manière de FremyCompany.
Ca alourdit un poil les CSS mais ça simplifie énormément le Javascript pour les néophytes. On peut donc mettre les feuilles de style dans n'importe quel ordre (ne pas oublier de toutes les mettre pour les charger dans le cache du navigateur et ainsi améliorer le switch) : Code html :
Code :
rouge.css Code css :
Code css :
Code css :
|
||||||||||
|
|
00
|
|
|
#7 |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Bonjour
Après un WE fort chargé, me revoilà pour parler de http://www.developpez.net/forums/sho...d.php?t=484284 . Ma méthode est entre la dernière proposition et la première Je charge toutes les pages de style et je n'en applique qu'une. Ce que j'explique est simple sans appel à un quelconque cookie : mon but était seulement de tester un changement de style, comme on peut le faire avec le menu Affichage->style de page sous FireFox Par contre, je vois qu'ici il y a des options[i].selected = true; alors que moi, je n'avais vu que des a.disabled = false;, ceci me semble équivalent, mais la méthode utilisée ici me semble plus facilement explicable Je pense que dans un article complet, il serais bien de parler de toutes ces méthodes. Le concepteur de page choisissant celle qu'il préfèrera au final Vous en pensez quoi ?
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
00
|
|
|
#8 | |
|
Expert Confirmé
![]() ![]() |
Citation:
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
|
|
|
00
|
|
|
#9 |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Bonjour
C'est avec ça alors qu'on sélectionne le style ? Code :
document.documentElement.className = css
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
00
|
|
|
#10 | |
|
Expert Confirmé
![]() ![]() |
Citation:
En gros, on met une classe CSS à l'élément HTML, puis on fait != stylesheets Quand aucune classe CSS est définie (donc pas de JS)Classe CSS = 'red' Classe CSS = 'blue'
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
|
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Inscription : mai 2004 Messages : 1 253 ![]() |
sur le body, l'attribut class, sur le body >_<
|
|
|
00
|
|
|
#12 | |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Citation:
Alors que pour moi, c'était mon but Mais je trouve l'astuce intéressante En effet, on peut ne travailler que sur certaines parties de la page !
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
|
00
|
|
|
#13 |
|
Expert Confirmé
![]() ![]() |
Non, documentElement, c'est HTML
Si tu en veux la preuve : http://msdn2.microsoft.com/en-us/lib...39(VS.85).aspx
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() Inscription : mai 2004 Messages : 1 253 ![]() |
Sauf que le la balise HTML ne peut pas recevoir d'attribut CLASS, d'où mon intervention.
Si tu en veux la preuve : http://w3schools.com/tags/tag_html.asp Et puis, puisque vous parlez toujours de faire au plus court : est plus court que Code :
document.documentElement.className = ... ; |
|
|
00
|
|
|
#15 |
|
Expert Confirmé
![]() ![]() |
Oui, mais c'est uniquement dans l'idée du validateur HTML/CSS alors... Parce que j'ai déjà essayé <html style="..."> et <html class="..."> et ca marche très bien sur tous les navigateurs
De plus, mettre sur body a un gros inconvénient : tu ne peux pas écrire .rouge body { }, tu dois écrire body.rouge, alors que pour tous les autres éléments, tu devras écrire .rouge xxx {}
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
|
|
00
|
|
|
#16 | |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Citation:
Autant se référer à dvp.com : http://giminik.developpez.com/xhtml/
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
|
00
|
|
|
#17 | |
|
Expert Confirmé
![]() ![]() |
Citation:
Même FireFox ne respecte plus les normes (si vous saviez le nombre d'extension (et contradictions parfois, même si c'est plus rare) aux normes que FireFox a déjà, vous seriez étonné. Et cela concerne tant le CSS, que l'HTML que le JavaScript. Surtout le JavaScript d'ailleurs)Et c'est absolument pareil pour Safari, qui suit l'exemple de FireFox. Il n'y a plus qu'Opéra à s'accrocher aux standards et rien qu'à eux. Preuve étant leur ajout tardif du XMLHTTPREQUEST (ils attendaient que l'on trouve un accord au W3C sur le sujet, mais ils ont du se résigner, comme d'hab ca en reste toujours à l'état de brouillon). Conséquence : Plein de sites ne passent pas sous Opéra... Qui est le gagnant dans cette hisoire ? Vous n'allez pas me dire que c'est les utilisateurs d'Opéra ![]() Une norme stupide et sans fondement (pk HTML ne pourrait-il pas être stylé ? Vous savez, il l'est pas tous les navigateurs !) ne doit pas être respectée, selon moi - surtout si elle date de plus de 11 ans. Mais libre à vous de faire comme vous voulez
__________________
Fremy Pour vos développements Web et une navigation agréable, le tout gratuit : 1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !) 2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey |
|
|
|
00
|
|
|
#18 |
![]() ![]() Bernard SIAUDEnseignant Inscription : novembre 2003 Messages : 4 400 ![]() |
Dans l'autre sens : si on fait un site compatible aux normes, on a le plus de chance d'être lu par tous.
Moi, c'est ma philosophie.
__________________
Modérateur Mandriva Linux Amicalement VOOotre Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org Mes tutoriels |
|
|
00
|
|
|
#19 | |
|
Membre Expert
![]() Inscription : mai 2004 Messages : 1 253 ![]() |
Citation:
Parler d'obsolescence semble être plus juste, mais là, c'est tout simplement du dénigrement ! |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com