Scout Web Portail, le moteur de site internet scout

Forum de Discussions

Forums - Design de SWP - Un beau menu !

Rechercher dans le forum

Aller à la page 1, 2 Suivante

Un beau menu !

NilgoFT

Visiteur

Bien le bonjour !

Pour "hiérarchiser" les liens dans mon menu, j'ai mis pour l'instant des ">" genre :

Meute CM
> photos
> staff
> téléchargements
> uniforme



Puis j'ai vu ce site : http://www.st-ex.ch/

Et je me suis demandé comment on faisait pour ajouter une image (boule, carré) avant le nom de la catégorie ? Et, encore mieux, comment fait-on pour en changer lorsqu'on survole le lien? (comme sur ce site dont je vous donne le lien).

Merci bien !
Voir son profil Posté le 14/02/2007 à 15:44:09

Re : Un beau menu !

belfo

Membre du projet
Scout Web Portail

la puissance du css

tu peut dire de metre une image, et avec l'option de hover sur un lien tu definit une autre image

mais je saurait pas te donner plus de details
Voir son profil Posté le 14/02/2007 à 20:06:22

Re : Un beau menu !

ChMat

Webmaster

La puissance du CSS, effectivement

Le menu est basé sur des listes non ordonnées. Il suffit donc d'ajouter à chaque item un fond composé d'une image en positionnant le texte correctement selon la position de la puce (si tu intègres la puce dans l'image de fond).

Pour cela, dans la feuille de styles :

Code :
#menu li { background:#999 url('imagedefond.png') left top no-repeat; padding-left:15px;}


Dans l'exemple ci-dessus, le texte de chaque intitulé du menu aura une marge gauche interne de 15 px. Cela permettra de ne pas chevaucher la puce qui se trouve à gauche dans le fichier imagedefond.png. L'image de fond est positionnée en haut à gauche du bloc mais on pourrait préciser la position au pixel si nécessaire. Par défaut, l'image de fond est répétée autant de fois que nécessaire pour tapisser le fond du bloc qu'elle occupe. Nous la désactivons ici.

Pour la petite note, le chemin vers l'image de fond indiqué dans la feuille de styles doit être relatif au fichier de styles et non à la page où il sera affiché (ici, imagedefond.png se trouve dans le même dossier que la feuille de styles).

Très bien, nous avons maintenant une jolie image de fond.

Pour y ajouter l'effet de survol, il suffit de créer la même image avec tous les effets que tu veux.

Code :
#menu li:hover { background:url('imagedefond_survol.png') left top no-repeat;}


Et ci-dessus, on crée une autre règle qui définit l'événement hover* (survol) sur l'item de la liste. On indique seulement les paramètres qu'on veut modifier (on pourrait y ajouter du gras, de l'italique, un changement de taille, de couleur ou tout ce qu'on veut). Et le tour est joué


Il faut néanmoins noter que les deux règles ci-dessus s'appliqueront à l'ensemble des items du menu de SWP. Pour définir un comportement propre à chaque type d'item ou carrément à chaque item, il faut regarder le code source de ton installation et y récupérer le nom de classe ou l'identifiant du menu.

Pour plus d'informations, je te renvoie à l'aide de SWP consacrée à l'adaptation du design.


* hover peut être appliqué à toutes les balises xhtml au sein du corps de la page. Néanmoins, les versions de Microsoft Internet Explorer antérieures à la version 7 ne reconnaissaient l'événement hover que sur la balise <a>.
Voir son profil Posté le 15/02/2007 à 10:01:42

Re : Un beau menu !

NilgoFT

Visiteur

Hum.
Le problème, c'est que je ne trouve pas cette ligne à modifier ^^ (Et je n'arrête pas de le relire !)

Second problème, peut-être lié : pour l'instant je change les COULEURS du site. Et quelques parties du menu restent désespérément ORANGES (par ex. le menu d'unité).

voir : www.LC29.be

Ca se trouve oùuuu ?

Merci de votre aide !

NilgoFT -Vincent

PS : j'ai été voir l'aide... Mais bon les intitulés #menu and co sont justement introuvables
J'ai juste ceci :
Citation :

/*Mes personalisations: menu

**********************************************/

#menu a.lien_categories {

color: #FFF; background-color: #36335E; text-align:center; font-weight:bold; }

#menu a.lien_categories:hover {

color:#FFF; background-color: #36335E;}
Voir son profil Posté le 15/02/2007 à 11:07:31

Re : Un beau menu !

ChMat

Webmaster

Tu n'as pas tout bien lu

Je te suggère la section "Les feuilles de styles du portail", sur la page mentionnée ci-dessus, qui t'explique en quelques mots ce que contient chaque feuille de style de SWP

Tu y découvriras que les menus sont définis dans les feuilles de styles situées dans le dossier templates/default/menus/

Mais lis bien la page, elle explique tout.
Voir son profil Posté le 15/02/2007 à 13:32:57

Re : Un beau menu !

belfo

Membre du projet
Scout Web Portail

ce puissant mais perso -_- je m'en sort pas ^^"
Voir son profil Posté le 19/02/2007 à 23:07:32

Re : Un beau menu !

ChMat

Webmaster

J'ai aussi pas mal ramé avant de piger tout le concept des CSS. Mais une fois que c'est fait, waow
Voir son profil Posté le 20/02/2007 à 13:46:09

Re : Un beau menu !

Martre

Visiteur

hello! moi perso j'adore les css... mais disons que j'avais plus facile quand c'est moi qui les crée la j'ai vraiment du mal!

Bon j'aimerais mettre en place un systme de menu à peut prés similaire a celui de celui ci.. si ce n'est que j'aimerais garder les menu des section sur la gauche.. et avoir le reste des menus sur une bande en haut.. mais la... j'abandonne.. je ne m'y retrouve, pas j'ai beau tester, modifier je n'arrive a rien.. :s donc temps pis cela restera comme ca sauf si quelqu'un a déjà fait ce genre de modif.. je suis preneur..
Voir son profil Posté le 27/02/2007 à 15:25:40

Re : Un beau menu !

ChMat

Webmaster

Même un professionnel des CSS passera un certain temps pour se familiariser avec la structure du code et des styles CSS.

SWP compte pas moins de 150 fichiers de code et parmi eux, un joli paquet de balises, de classes et d'identifiants.

N'hésitez pas à poser des questions précises, d'autres ont peut-être déjà trouvé la solution à votre problème
Voir son profil Posté le 28/02/2007 à 19:44:46

Re : Un beau menu !

gzarmati

Visiteur

Pour ma part, j'ai revu toute la structure du menu... Et j'ai réécris tout le CSS qui était fort peu clair à mon gout. (Sorry)

Pour aller voir le résultat : www.unite124.be Si vous avez firefox vous verrez en plus que je me suis amusé a faire des contours rond à chaque menu... C'est plutot sympa.

Voici les modifs que j'ai faites :

1- j'ai supprimé toutes les listes UL du menu. Je ne vois pas pourquoi on fait une liste si la première chose qu'on fait c'est écrire : Code :
list-style:none;

2- j'ai défini les style des titres h1, h2, h3... Ce qui me permet de structurer beaucoup plus facilement mon menu. Et surtout on n'a plus besoin d'aller voir le code source pour trouver les bonnes balises à mettre pour faire des jolis menus dans le menu_general en dessous des sections.
3- j'ai fait un bloc "div sections" pour les menus des sections (sans l'unité) ce qui me permet d'avoir un bloc aux coins rond pour toutes les sections (c'est joli )
4- c'est surtout ici que je me suis amusé... lorsqu'on ouvre un menu de section, le bloc "div section" se divise en deux, et un bloc "div sous-section" qui sert au menu de la section est intercalé. En jouant avec les positions et les z-index, j'ai arrangé tout ça pour qu'on voie bien que c'est de la section que découle le menu qui vient de s'ouvrir.
5- le fin du fin, j'ai chipoté dans le code du menu-site.php pour faire en sorte que lorsqu'on affiche le code source de la page, on ait une indentation facile à lire.

Je ne peux que vous invité à aller voir ce que ça donne pour mieux comprendre et surtout voir tout ce que je viens de dire

Donc voilà si qqn a des commentaires ou des questions...
Voir son profil Posté le 02/03/2007 à 15:20:54

Re : Un beau menu !

belfo

Membre du projet
Scout Web Portail

joli meme tres joli

je pense que d'autre aimeront, si tu sais le faire, tu pourrait expliquer cmt faire les truc machin rond enfin ce vraiment bien

*penser que je ne sais meme pas metre un texte rouge suivi d'un mauve sans que FF ne pige plus rien a mon css ^^*
Voir son profil Posté le 02/03/2007 à 18:54:24

Re : Un beau menu !

gzarmati

Visiteur

Pour les machins rond c'est facile, c'est une simple ligne dans le css au meme titre que "background" ou "color". (je l'ai découverte en regardant les autres css du site. Entre autre les blocs de remarques.

le parametre c'est :

-moz-border-radius:7px;

Evidement on peut remplacer 7px par ce qu'on veut. Ca définit le rayon de courbure des coins. Plus le chiffre est grand plus l'arrondi est grand. (logique).

Il y a juste un petit truc pour que les "langues" qui s'ouvrent n'aient que 2 coins arrondis. En fait, il y en a quatre, mais les deux du dessus sont en dessous du bloc des sections. Pour faire ça j'ai donné un z-index aux deux blocs. Un plus grand pour celui qui est au-dessus de l'autre. Attention, pour que le z-index marche il faut être en "position:relative;" (C'est rarement indiqué clairement sur les site d'aide. J'ai un peu souffert pour trouver d'ou venait le bug, mais comme ça vous savez ) J'ai fait remonter le bloc du dessous de 10px avec la commande "top:-10px;" et pour pas que le texte suive j'ai défini une "padding-top:10px;"

J'espère avoir été clair.

Allez voir le code css ci-dessous.
pour le langues c'est le ".sous-section" et pour les sections c'est les ".sections"


il y a tout de sorte de css qui commence par -moz. Par exemple -moz-opacity permet de rendre certaines parties transparentes... à 0 c'est transparent à 1 c'est pas du tout et toutes les valeurs entre font le dégradé.

une recherche sur google vous en apprendra bien plus. Mais ne vous faites pas avoir comme moi la première fois. Il faut faire une recherche sur moz et pas sur -moz car il interprete le moins comme "pas ce qui contient moz".

Un dernier petit mot, c'est que moz est le diminutif de mozzila. C'est donc des codes développés et interpretés uniquement par mozzila (Firefox) pour le moment, c'est un peu le porblème.

Voici le css complet du menu:
Code :
#menu 
{
	float:left;
	width:140px;
	background: url('../../../templates/default/images/fond_menu.png') repeat-y; 
	border:1px #039 solid; 
	border-left:0; 
	border-top:0;
}


#menu h1
{
	text-indent:0px;
	margin:0px;
	margin-left:2px;
	margin-right:2px;
	padding:1px;
	border:0px;
	text-decoration:none;
	color:white;
	text-align:center;
	background-color:#039;
	font-weight: bold;
	line-height:1.2em;
	font-size:1.1em;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	-moz-border-radius:7px;
	text-transform:uppercase;
}

#menu h2
{
	position:relative;
	z-index:11;
	text-indent:0px;
	margin:0px;
	margin-top:3px;
	margin-left:2px;
	margin-right:2px;
	padding-top:1px;
	padding-bottom:1px;
	border:0px;
	text-decoration:none;
	color:white;
	text-align:center;
	background-color:#039;
	font-weight: bold;
	line-height:1.1em;
	font-size:1em;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	-moz-border-radius:7px;
}

#menu h3
{
	text-indent:0px;
	margin:0px;
	padding:1px;
	border:0px;
	text-decoration:none;
	color:white;
	text-align:center;
	font-weight: bold;
	line-height:1.1em;
	font-size:1em;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-style:normal;
}

#menu .sections
{
	position:relative;
	z-index:10;
	background:#69C;
	margin:0px;
	padding:0px;
	margin-right:3px;
	margin-left:3px;
	border:1px #039 solid; 
	-moz-border-radius:7px;
}

#menu .sous-section
{
	position:relative;
	top:-10px;
	z-index:1;
	background:#CCF;
	padding-top:10px;
	padding-bottom:3px;
	margin-left:7px;
	margin-right:7px;
	margin-bottom:1px;
	border:1px #039 solid; 
	-moz-border-radius:10px;
}

#menu a
{
	display:block;
	color:white;
	text-decoration:none;
	text-indent:15px;
	margin:0px;
	padding:0px;
}

#menu .ss-sec-txt, #menu .aucun_lien
{
	color:#039;
}


#menu .new_lien 
{
	color:#039;
	padding-top:1px;
	padding-bottom:1px;
	padding-left:6px;
	background: url('../../../templates/default/images/plus.png') no-repeat 5px;
}

#menu #gestion_menu
{
	padding-left:6px;
	background: url('../../../templates/default/images/go.png') no-repeat 5px;
}

#menu #menu_general 
{
	margin:0;
	padding:0;
	margin-top: 1em;
}

#bloc_connectes a 
{
	display:inline;
}

#menu a h1:hover, #menu a h2:hover, #menu a h3:hover
{
	z-index:20;
	color:#039;
	padding:0px;
	font-weight: bold;
	border:1px #039 solid;
	background: white;
	font-style:italic;
	-moz-border-radius:7px;
}

#menu a:hover, #menu #gestion_menu:hover 
{
	background-color:#039; 
	color:#FFF;
}
Voir son profil Posté le 02/03/2007 à 22:41:29

Re : Un beau menu !

gzarmati

Visiteur

Après discussion avec un ami qui s'y connait pas mal en CSS et surtout en règles de bonnes pratique en matière d'écriture de site. Il s'avère que je n'aurais pas du supprimer toutes les listes. Je vais donc les remettre. De plus il parait que ça ne ce fait pas d'écrire des choses comme Code :
<a href="..."><h1>Titre</h1></a>
Les balise H ne peuvent pas être dans des balise A or, j'ai fait ça partout.

Donc voilà, je vous ferai savoir lorsque mon menu sera conforme
Voir son profil Posté le 05/03/2007 à 14:30:48

Re : Un beau menu !

Spols

Membre du projet
Scout Web Portail

met tes balise a dans tes balises H, par contre il est vrai qu'il vaut mieux utiliser ul et li pour un meneu même si la première chose qu'on fait est d'enlever la décoration et les espace entre chaque
Voir son profil Posté le 05/03/2007 à 18:40:12

Re : Un beau menu !

ChMat

Webmaster

En fait, la liste est un élément qui a un sens sémantique. Le menu est un ensemble de liens reliés par leur objectif. D'où l'utilitié de les intégrer sous forme de liste. Et le fait de conserver la liste permet de jongler en quelques lignes avec l'apparence du menu. Ce qui ne serait pas possible avec un simple enchaînement de liens.

Concernant l'imbrication des balises, il y a une règle à retenir. Les balises inline seront toujours à l'intérieur de balises block. Ceci dit, il est possible d'imbriquer plusieurs balises inline ainsi que plusieurs balises block.

Les balises block les plus fréquentes sont h1 à h6, p, div, li, table, blockquote, pre, ... chacune ayant un rôle sémantique précis.

Les balises inline les plus fréquentes sont a, span, code, font, strong, em, i, b, u, ...

La différence entre les balises block et inline ? La balise block occupe par défaut toute la largeur de l'écran, elle coupe le flux du texte pour le séparer des autres blocs de texte ; au contraire de la balise inline qui reste dans le flux de texte.

Voilà donc pour la petite explication
Voir son profil Posté le 05/03/2007 à 23:23:29

Aller à la page 1, 2 Suivante

Forums - Design de SWP - Un beau menu !


Forum en accès public
Modération par l'auteur de la discussion et les animateurs

Pour écrire sur le forum, connecte-toi ci-dessous ou inscris-toi sur le site.

Plus d'infos au sujet du forum

Page générée en 0.63 secondes (6 requêtes)