Envoyé par : anais
Date : 07/07/2009 12:23
Bonjour,
Est-ce quelqu'un peut me renseigner comment on peut changer la couleur de fond de l'élément sélectionné d'une menulist ?
Merci d'avance.
Envoyé par : jérôme
Date : 07/07/2009 15:35
Salut, tu peux faire un truc comme ça :
function changementCouleur(obj) { var tabItem = document.getElementById('liste2').getElementsByTagName('menuitem'); for (i=0; i < tabItem.length; i++) { tabItem[i].style.backgroundColor = "#fff"; } obj.style.backgroundColor = "#ccc"; }
Et le xul :
<menulist id="liste2"> <menupopup> <menuitem onclick="changementCouleur(this);">valeur1</menuitem> <menuitem onclick="changementCouleur(this);">valeur2</menuitem> </menupopup> </menulist>
Envoyé par : mistervince
Date : 08/07/2009 09:34
salut, c'est possible aussi en utilisant le css :
menulist menuitem[selected="true"] { -moz-appearance: none!important; background-color: red; }
La première règle est indispensable : elle permet d'éviter que l'élément prenne son apparence par défaut, et permet donc à tes propres règles css de s'appliquer correctement. Tu peux alors modifier le menuitem sélectionné (selected="true") comme tu veux : couleur de fond (pas forcément rouge ;-)), couleur de texte, police...
Si tu souhaites modifier complètement le style des menuitem :
menulist menuitem { -moz-appearance: none!important; /*style d'un menuitem normal*/ } menulist menuitem:hover { /*style d'un item survolé*/ } menulist menuitem[selected="true"] { /*style de l'item sélectionné*/ }
Envoyé par : laurentj
Date : 08/07/2009 14:39
Je confirme, la solution par CSS est la meilleure.
Envoyé par : anais
Date : 09/07/2009 16:13
Merci,
J'ai aussi changé ceci :
menulist:focus > .menulist-label-box { border: 1px dotted red; background-color: red; color: red; }
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.